- 12 Jun 2015
General Linux / Unix
This page contains a number of useful resources, links, tutorials, and help on the general use of a Linux / Unix based system, such as Scientific Linux or even the terminal in OS X. They are loosely grouped on topic or by individual tutorial, and some links may be repeated if they fall in to multiple categories. If a particular tutorial or set of instructions starts to become large and / or complex enough it might be moved to it's own subpage.
The main tool of Linux and HEP Physics work is the terminal. The terminal is where you enter commands and tell the computer the things you want it to do, and it's entirely text based. At first the terminal can be daunting and confusing since everything you need is some kind of command and probably flags and arguments. Listed here is some resources for learning the terminal and it's numerous commands. Like all things Linux, there are many different versions and types of terminals and shells. The most commonly used shell environment is BASH, which is the Scientific Linux default. Most of these links are for BASH, but usually many commands carry over into other environments, like TC-Shell (tcsh) or Z-Shell (zsh).
Editing code requires the ability to edit text files, which in turn requires a text editor
. Many different text editors exist, some are cross-platform while others are specific to Linux, Windows, or OS X. Some editors come preinstalled and others need to be personally installed. A nice list of text editors can be found here
, and a comparison of many of those editors can be found here
. Try a few out and find one that works for you; a text editor is almost entirely personal preference. However there are a few I will list as good starting suggestions based on use by various group members.
- Emacs : This should be installed on any Linux system, along with OS X. It is a very customizable editor and by default has both text-only and graphical user interfaces. The Emacs manual can be found here, and a nice reference card for the many Emacs shortcuts can be found here.
- Vim : This might need to be installed on a Linux system, but is already installed on OS X. Vim is an improved version of Vi (which you can also use if you wish) and is quite customizable. Vim is in general a text only editor, but some versions allow a graphical user interface. The Vim documentation page can be found here.
- Gedit : This is the default GNOME editor which will be installed on any Linux system that uses the GNOME Desktop Environment. It is similar to Notepad in appearance, but contains many useful options for editing code. It also contains a plugin system for customization and extending its abilities. It's homepage can be found here.
- Notepad++ : This editor is Windows only, but it is a very nice text editor. Hence the name, it is similar to Notepad, but contains many improvements for general use and for code writing. It contains a plugin system for customization and extending its abilities. It's homepage can be found here.
- TextMate : This editor is OS X only, but it is a highly recommended editor. It's homepage can be found here.