Library Carpentry: The UNIX Shell

This Library Carpentry lesson introduces librarians to the Unix Shell. At the conclusion of the lesson you will: understand the basics of the Unix shell; understand why and how to use the command line; use shell commands to work with directories and files; use shell commands to find and manipulate data.


To complete this lesson, you will need a UNIX-like shell environment -see Setup. You will also need to download the file from GitHub to your desktop and extract it there (once you have unzipped/extracted the file, you should end up with a folder called “shell-lesson”).


Setup Download files required for the lesson
00:00 1. What is the shell? What is the shell?
What is the command line?
Why should I use it?
00:30 2. Navigating the filesystem How do you move around the filesystem in the shell?
01:00 3. Working with files and directories How can I copy, move, and delete files and directories?
How can I read files?
01:30 4. Automating the tedious with loops What is a loop?
How can a loop be used to repeat a task?
02:00 5. Counting and mining with the shell How can I count data?
How can I find data within files?
How can I combine existing commands to do new things?
03:30 6. Working with free text How do we work with complex files?
04:30 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.