Shell Scripting/Bourne Again Shell (Bash)

The Bourne Shell is not only used to communicate with the system using the commandline that it provides. It is also a full programming language. This course gives insight into shell programming, exchanging the first impression - dirty! - with the more appropriate second impression: aesthetic!.

Course Outline

  • Some history of UNIX and the shells which grew up together

  • Hello World and other boilerplate

  • Variables, environment variablens, and commandline arguments

  • Control constructs. The bigger part of the course: conditionals and loops

  • Functions

  • Pipes and IO-Redirection

  • Miscellaneous. String manipulation (“parameter expansion” is the correct term) and several other obscure constructs that one might not be able to do without

Prerequisites

Experience with Linux, especially shell commandline usage, is required. See Linux Basics: A Gentle Introduction.