Setting Up a Computer Environment for Research¶
Terminal Tools¶
Terminal Emulator¶
- iTerm2 - macOS Terminal Replacement
- A nice free choice for MacOSX. iTerm2 brings the terminal into the modern age with features you never knew you always wanted.
- A cheat sheet of iTerm2 shortcuts
- It becomes easier and easier to do research under Windows system:
- Different Linux releases have there own default terminal emulator and
normally they are good enough for research works. Meanwhile, there
are some nice choices of drop-down style emulators:
- tilda - A Gtk based drop down terminal for Linux and Unix
- guake - Drop-down terminal for
GNOME
- Guake is a dropdown terminal made for the GNOME desktop environment. Guake’s style of window is based on an FPS game, and one of its goals is to be easy to reach.
Terminal Multiplexer¶
- GNU Screen
- Screen is available in most Unix/Linux system release.
- How to use Linux Screen
- tmux - a terminal multiplexer for Unix-like operating
systems
- Similar to Screen. There are a lot of discussions about the pros and cons of Screen and tmux, but as a beginner, either is fine.
- Read A tmux crash course and tmux shortcuts and cheat sheet before you use it.
Shell Environment¶
Fluency on the command line is a skill often neglected or considered arcane, but it improves your flexibility and productivity as an engineer in both obvious and subtle ways. – The Art of Command Line
- The same also applies to student of science and researcher.
- The Art of Command
Line
- In multiple languages, including Chinese
- 37 Important Linux Commands You Should Know
- awesome-command-line-apps - Use your terminal shell to do awesome
things
- A curated list of useful command line apps, in celebration of the TUI.
- awesome-macos-command-line - Use your macOS terminal shell to do
awesome
things
- A curated list of shell commands and tools specific to OS X.
- A lot of these actually work for Linux too.
Regular Expression¶
- Regular expression (regex) is a group of characters or symbols which is used to find a specific pattern from a text. It is very useful to learn the basic of regex.
- Learn Regex the Easy
Way
- There is a Chinese version
Other than bash¶
- Oh My Zsh
- Code on Github is here
- The Fish Cookbook
- Tips and recipes for fish, from shell to plate
Version Control¶
Git¶
- git is the most widely used software
for version control and it is extremely useful to learn the basic of
it.
- Plenty of reference and examples are provided in the above webpage including many short videos.
- Learn Git with Bitbucket Cloud is another good place to start learning about version control using git.
- Oh shit, git!
- A very practical guide for when you screw up in git.
System Tools¶
- gotop - system monitor
- A terminal based graphical activity monitor inspired by gtop and vtop
- tldr - command document for
human
- Simplified and community-driven man pages
- thefuck - Magnificent app which corrects your previous console
command
- Well….it is actually kind of useful…
MacOS¶
- mac-setup: Installing Development environment on
macOS
- The more readable website is here
Mount harddrive in Linux file system¶
- Linux system uses ext4 or other similar file system that is not
automatically readable under MacOSX. The ext4fuse
software will be useful.
- Please read this stackexchange thread for more details.
- ExtFS is not a free software. It costs you $39.95 but it is claimed to be able to mount or even repair ext system under MacOSX