Terminal and Shell

As mentioned, many tools we’ll use are first and foremost developer oriented tools. They typically have command line interfaces (CLI) as the lowest common denominator for using them. Some also have (optional) GUI tools on top of their CLI, with various offerings on different platforms. The technical parts of the training are set up so that a particular GUI and/or familiarity with using it are not required.

The CLI tools we will use can be used from a Terminal Emulator program, which runs a Shell program, allowing you to enter (textual) commands and providing you with the output of the commands you enter. All operating systems come with a default terminal emulator program and a shell program. For what you need for this training, these default programs will suffice. It’s also fine to use a different one, if you prefer to do that.

Linux

All Linux distributions come with a shell program and all desktop environments ship a Terminal Emulator. Even without a desktop environment, you can install a terminal and shell programs and launch the terminal to get started. You’ll find that the three popular shells Bourne Again Shell (bash), Z Shell (zsh) and Fish Shell (fish) are available from your distribution’s repositories.

If you’re on Linux, chances are you are already quite familiar with using command line programs, a terminal and shell.

alacritty arch

You can use any combination of Terminal and Shell you like to work with the command line tools for the assignments. The commands were not tested with the fish shell.