• An sh-compatible shell that incorporates useful features from the Korn shell (ksh) and the C shell (csh)

Resources

Shortcuts

ShortcutFunction
Ctrl+LClear screen
Ctrl+RStart or continue a search through

Scripting

Transclude of how-to-automate-your-dev-setup#^e00c9b

  • if ! command >/dev/null 2>&1; then ... fi:
    • If command (run without output) returns an exit code greater than 0, then …

if statements

Notes

  • Basic syntax:
    mynum=200
     
    if [ $mynum -eq 200 ]
    then
        echo "The condition is true."
    else
    	echo "The condition is false."
    fi
  • Checks within single brackets
    • Between variables/literals
      • Comparing integers
        • -eq (equal to)
        • -ne (not equal to)
        • -gt (greater than)
        • -ge (greater than or equal)
        • -lt (less than)
        • -le (less than or equal)
      • Comparing strings
        • = (equal to)
        • != (not equal to)
      • Comparing files
        • -nt (newer than)
        • -ot (older than)
    • Before the variable/literal
      • -f (regular file exists)
      • -d (directory exists)
      • -n (string has non-zero length)
      • -z (string has length zero)
    • Combining checks
      • && (and)
      • || (or)
  • Checks without brackets
    • command -v COMMAND (command exists)
    • COMMAND (command exits with return code 0)
  • ! reverses the following condition
Link to original