Beneath the fancy operating system on your computer, there is another operating system. It doesn’t have all the glitter of Mac OS X or Windows 8 (or even Windows XP). For that matter, it doesn’t even have windows.
This operating system is the command line interface. By typing in text commands at the blinking command prompt, you can access the raw power of your machine, accomplishing complex tasks in a few lines of typing that would take a great deal longer in a GUI.
It probably looks like this:
Why would you want to type commands into a user interface that hails from the late ‘60s? Stephen Ramsay provides some compelling reasons in his blog post “Life on the Command Line” (see also “The Mythical Man-Finger” part 1 and part 2). For a very detailed explanation, you could read Linux and the Unix Philosophy, by Mike Gancarz.
Briefly, these are some of the advantages to using the command line:
- Most important, command line tools use verbal language. For example, this is a basic command in Unix:
cp file1.txt file2.txt
. That command is a sentence “c[o]p[y] file1 [which is a] t[e]xt [file] [to] file2 [which is a] t[e]xt [file],” or a verb followed by a direct object and an indirect object. The verbal nature of the command line makes it particularly apt for certain kinds of scholarship. - Most command line tools are portable across systems and computers. For example, you can use vim to write your documents on any computer or operating system.
- Command line tools give you access to the heart of your computer, rather than relying on layers and layers of graphical programs.
- Command line tools do one thing, well.
- After you get past the learning curve, command line tools are much, much faster than graphical programs.
- Command line tools are free and usually open-source. This gives you freedom over the way that you compute.
- Command line tools are rock-solid stable. They don’t break, and they don’t crash.
With this post, ProfHacker is inagurating a series of occasional posts titled The ProfHacker Guide to the Command Line. In future posts we’ll discuss how to find the command line on your Windows, Mac, or Linux computer, how to do some basic commands, and how to install useful programs. We will also cover programs like pandoc (for converting text files and pdftk (for manipulating PDFs).
What about you? Have you used the command line before? Are you willing to experiment? What topics should we cover?