1. ' and " are different in bash. String delimited with ' are literal strings and will not substitute variable values whereas " delimited string will.

  2. List of special variables to refer to arguments.

    • $0: name of the script

    • $1 to $9: arguments to the scripts

    • $@: all the arguments

    • $#: number of arguments

    • $?: return code of the previous command

    • !!: entire last command

    • $_: last argument from the last command

  3. $(CMD) will execute CMD and get the outut of the command and subsitute it in place