Special symbols
Arrows
./program > output.out (> for stdout)
./program 2> err (2> for stderr)
./program >> output.out (>> attach to the end)
./program < input.in
./program -k blah 2 < input.in > output.out
File descriptor 1 is the standard output (stdout). File descriptor 2 is the standard error (stderr).
Quotes
'
single quote: string literals"
double quote: suppresses wildcard but not variables
Flags
Use single dash -
for options (should be right next to the command)
--
followed by subcommands
The --
tells not to try to parse what comes after it as command line options.