Resources for learning to operate a computer from the command-line
Much of the work that we do in computational biology operates from what we call “the command-line” interface. The command-line allows us to carry out nearly all of the operations that you can with a graphical user interface (GUI), with its “point-and-click” interface. In many cases, (e.g., in launching large-scale computational processes, such as needed for genomic data analysis), it is much more efficient to do so from the command-line, especially if you are going to be using cloud-based or other remote computing resources.
That said, working at a computer from the command-line is unfamiliar, challenging, or even intimidating for many people. In our experience, ANYONE can learn to work at the command-line, but it takes time, practice, and just “making your own mistakes.” to get comfortable.
Here are a set of resources that should provide quite a bit of help for those who want to learn to “think in command line:”
Introductory videos from the Hubbard Center for Genome Studies, provided in association with the New Hampshire INBRE program. These are a wonderful set of short videos, typically running between 5 and 15 minutes in length, giving an introduction to various concepts in working at the unix command line. A complete list of videos can be found here.
Here are a few that we have found particularly helpful for getting started (though all are quite useful):
- Module 1: Anatomy of a Command
- Module 3: Moving around
- Module 5: Move, Copy, and Delete
- Module 13: File Permissions
- How to use SSH to Connect to a Remote Server
Also, as with our list of external R resources, we also recommend some of the courses set up by the folks at Data-Carpentry and Software-Carpentry.
- Data-Carpentry Introduction to Command Line for Genomics
- Software-Carpentry The Unix Shell
Finally, for a much more in-depth but very useful and well-laid out tutorial, is the Introduction to Remote Computing, provided by the UC Davis Data Lab, run by Professor C. Titus Brown. The document is very comprehensive, so it is a very good resource, but it covers much more than we need for this week
- Link to the complete document is here
- The chapters that are likely to be of use for us are: (these videos are generally MUCH longer than the Hubbard Center videos above)
- Chapter 1: Introduction to the Unix Command Line and an accompanying video
- Chapter 2: Copying and modifying text files on remote computers and an accompanying video