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.