Command line tools

Thought I’d post a list of some of the most common command line tools I use:

  • ls/cp/mv/rm/mkdir/rmdir for file/directory management
  • ln for creating links (symbolic mainly -s)
  • cat/less/more/tail/multitail for looking at files/following files
  • unzip/zip/bunzip2/bzip2 for compression
  • chgrp/chown/chmod for file/directory permissions
  • git/svn for version control
  • grep for searching for text in files
  • find/locate/whereis/which for finding files
  • rsync/scp for remote file copy/synchronisation
  • wget/curl for downloading files
  • ssh for remote terminal sessions
  • date (and relevant date formatting)
  • time (to benchmark things)
  • diff for comparing files and folders
  • screen for screen management in terminal sessions
  • open (mac only) for opening files and folders with GUI tools (open . will open current folder in finder).
  • history to see what I have typed
  • sudo to do stuff as another user (typically the superuser)
  • pwd to figure out my current directory path
  • touch to create a new empty file on the fly
  • ps/top/htop for process management
  • vi/nano for text editing
  • echo for screen output
  • wc for word count (surprisingly useful)
  • du/df for disk usage/disk free on volumes
  • man/info to figure out commands and remember some of the more arcane syntax!

Also be sure to check out the comprehensive list at Wikipedia and this unix acronym list. It’s worth a look just in case there’s something there you didn’t even know existed.