UNIX

Knowledge of basic UNIX skills can really up your game when it comes to getting things done, if you work on Mac OS (and even on Windows, you can install a Linux subsystem that gives you access to UNIX).

Software Carpentry provides an excellent overview of the basics of the UNIX shell, covering the following essential topics:

  • Navigating files and directories

  • Working with files and directories

  • Pipes and filters

  • Loops

  • Shell scripts

  • Finding things

There is also an additional lesson on more advanced topics, including:

  • Manual pages

  • Working remotely

  • Transferring files

  • Permissions

  • Directory structure

  • Job control

  • Aliases and shell customization

  • Shell variables

Makefiles

The UNIX make utility is very useful for automating computational workflows.

Software Carpentry offers a tutorial on Automation and Make that introduces how to work with Makefiles to automate processing.