Computer Language Foundations: Command Line Basics
To be useful, every computer must offer some way for you to control it. Generically, the way you can control a computer is called a user interface because it allows you (the user) to interact with (that is, “to interface with”) the computer system. Most people may already be familiar with Graphical User Interfaces or GUIs, which are the buttons, windows, and other controls that you can point-and-click on, but this way of controlling a computer comes with severe limitations. Chief among these is the fact that you are limited to using only one tip of one finger on one of your hands (called your pointer or mouse cursor) and, worse, you have no access to anything outside of your immediate reach. In a GUI, if you cannot see it or touch it with the mouse, you cannot manipulate it.
This is why almost all hackers, programmers, and system administrators prefer a Command Line Interface or CLI over the graphical options for many, if not most, of their day-to-day tasks. In a command-line, or “terminal,” you can use the complete expressive power of spoken language to control your computer. You can use symbolism and metaphor to express any idea that you have the words for. Moreover, you always have all the words you know at your disposal at any time, even if they refer to things that are far away or that you cannot currently see.
In this beginner’s workshop, you’ll learn how to access the command line interface of your computer, and you’ll learn the basic grammar of command line languages such as that provided by the ubiquitous Bash command interpreter. You’ll also be introduced to the basic set of utilities required to quickly accomplish tasks that require working with files and folders, processing text, and automating common workflows that would take dozens or even hundreds of clicks with a mouse to complete in a Graphical User Interface. By learning how to “speak” to your computer using a command language, you can save hours every day and take your first step toward using your computer the way the best hackers would.