Everything in <> is variable and depends on your system / your intention The prompt is always shown in your shell: @: $ is the user that is running the shell (important if you work with multiple user accounts e.g. root and user) is the hostname of the PC the shell is running on (important if you connect to remote machines) is the path where you are currently located at As soon as the prompt is shown you can enter any command. The 'TAB' key autocompletes commands and paths as soon as there is no ambiguity. If multiple possibilities exist 2x'TAB' will diplay them. ################################################################################ Commands you should know: ################################################################################ man show manual for the command exit with 'q' ls list directory (mind the space between command and options, this is always the case) ls is empty just list the directory ls -l is '-l' list directory with more details (permissions owner group size date time filename) ls -a is '-a' list directory including hidden files ls -a -l are '-a -l' list directory (also hidden files) with more details (mind the space again) cd change directory (relative to your current directory) cd / change directory (absolute [from the file system root]) mkdir create folder mkdir -p create all folders to this path rm remove the file rm -r remove folder (recursive) chmod change file permissions (read, write, execute) for owner, group and others Permissions are typically shown this way: rwxrwxrwx first entry (rwx) is for the owner of the file/folder second entry (rwx) is for the group this file/folder belongs to third entry (rwx) is for all others missing permissions are shown with a dash '-' rwxr-xr-- means the owner can do anything; the group can read and execute; all others can only read chmod +x make file executable for everyone (+w -> writable; +r -> readable) chmod -x writable; -r -> readable) chmod u+x make file executable for the owner (u=owner, g=group, o=others a=all) chmod u-x read file contents (prints the whole file to the terminal) less read file contents (page by page) [exit with 'q'] echo print to the terminal echo > print to the file (note the '>' before ) using the operator '>' the output of every program can be written to a file what would 'ls -l > out' do? nano edit a file with the "nano" CLI text editor, creates the file if not existing ./ executes a program in the current directory /.../ executes a program in an absolute path (from root) /.../ & executes a program in background /.../ &>/dev/null executes a program silently with stdout and stderr redirected to /dev/null /.../ &>/dev/null & executes a program silently and in background chrt -f starts directly with RT priority , sets policy SCHED_FIFO chrt -r starts directly with RT priority , sets policy SCHED_RR chrt -f -p changes RT priority of running process/thread ID to , sets policy SCHED_FIFO chrt -r -p changes RT priority of running process/thread ID to , sets policy SCHED_RR sudo executes as root user ################################################################################ Paths you need to know: ################################################################################ / the root of your file system tree /home// the home directory of the currently logged in user . Shorthand: '~' /sys/class/gpio/ access to the gpio pins (if available) - see sysfs