A Gentle Introduction to the Shell
Course Outline
This one day course is designed for anyone interested in the command line and how to use it.
- What is a shell and why would we want to use it?
- The UNIX philosophy: keeping thing simple.
- Introduction to BASH and some useful commands.
- Creating and automating processes using shell scripts and
cron
.
Pre-requisites
Basic knowledge of how to use a computer and text editor useful, but not required.
Your own laptop preferably running either Linux or Mac OS X. We can supply free Ubuntu CDs on the day.
Course Details
Day 1: What is a shell?
We will firstly discuss why the shell exists and why it is useful. We will be discussing the UNIX philosophy and how it relates to shell scripting.
We will be looking at how to use the BASH shell including many of the basic commands for file and directory access and manipulation. We will also review some more advanced commands relating to editing files, job control and process management.
We will cover some of the more complex commands such as awk
, grep
, sed
, find
and xargs
.
Finally we will discuss how to automate tasks by creating shell scripts, including setting up tasks that run periodically using cron
.
Resources
Information covered in the course will be written up and provided online to attendees of the course. All source code and associated documentation will be made available.