Learn to ❤️ the Command Line

This workshop is meant to introduce you to the fundamentals of command line interfaces and to convince you that they’re worth learning more about.

Workshop Objectives

First, we will review some fundamentals of the command line like the syntax of commands, file system operations, and navigating around.

Next, we’ll move on to more advanced topics that are relevant in shell scripting, like loops and variables. We will see demonstrations of more sophisticated tools that are commonly used.

Finally, we will conclude with some examples of potential projects made easier by use of the command line and some of the most common and powerful command line utilities.



Our topics today come in many variations depending on operating system and software differences. To follow along with examples and do the exercises, all attendees need access to Bash (the most common shell) in a UNIX-like environment. What does this mean for you?

  • If you are on Mac OS X or Linux, you should be set. If you want to double-check, follow the instructions under Running the command line.
  • If you are on Windows, please download & install Git Bash. There are many installation options; if you go with the defaults, you should be fine.
  • Chromebooks, tablets, and smartphones generally do not give access to the command line and it would be too challenging to create instructions that work for them.

Thus begins the fair amount of “…except for Windows” that may occur during this workshop. Windows actually has its own syntactically-unique shells—Powershell is pretty good, in my estimation—but the OS’s design puts it at odds with the UNIX ideas that undergird Mac and Linux, making universality unachievable. Hopefully, we can make this workshop useful regardless of your OS but know that Windows’ differences may contribute to a decent amount of problems and errors.

Table of contents