Es gibt gute Gründe, sich als Linux-/Unix-Administrator mit dem Thema Shell-Programmierung zu befassen: Eine Shell ist auf jedem Linux-/Unix-System vorhanden und da die meisten Admins das Arbeiten mit einer Shell gewohnt sind, ist die Einstiegshürde niedrig. Einfache Automatisierung lassen sich daher oft schnell erstellen. Zudem liefern die meisten Linux-Distributionen/Unixe Scripte mit, die man zwar eher selten anpassen muss, aber unter Umständen verstehen will. Eine Herausforderung ergibt sich, wenn in Unternehmen oder Organisationen Shell-Scripte – auch in unternehmenskritischen Anwendungen – über Jahrzehnte hinweg gewachsen sind.
Allerdings birgt die Shell-Programmierung auch etliche Probleme: Die Syntax der Shell als Programmiersprache ist oft verwirrend und fehleranfällig, teils, weil sie nicht primär als Programmiersprache gedacht war, teils weil sie historischen Ballast mit sich herumschleppt. Dazu kommt, dass Fehler erst zur Laufzeit erkannt werden.
Dieser Vortrag gibt technische und organisatorische Hinweise für den sinnvollen und professionellen Einsatz von Shell-Scripten. Dabei wird Martin auf bash- und POSIX-Scripte eingehen. Shells wie fish oder Powershell oder die Spezialitäten von zsh und ksh werden in diesem Vortrag nicht vorkommen.