Grundprinzip
- Ein Shell-Skript ist eine einfache Textdatei, die eine Folge von Shell-Kommandos enthält.
- Die Shell liest und interpretiert diese Kommandos zeilenweise.
- Ein Skript kann interaktiv (vom Terminal) oder automatisch (über Zeit- oder Systemmechanismen) ausgeführt werden.
Aufbau eines Skripts
- Ein Shell-Skript beginnt immer mit der sogenannten Shebang-Zeile (Interpreter-Zeile):
#!/bin/bash
- Diese Zeile teilt dem System mit, welche Shell den folgenden Code interpretieren soll.
- Nachfolgend werden Kommandos, Variablen, Kommentare, Funktionen oder Kontrollstrukturen notiert.
- Beispiel
#!/bin/bash
echo "Hallo $USER"
echo "Heute ist $(date +%A)"
Kommentare
- Kommentare beginnen mit dem Zeichen # und werden von der Shell ignoriert.
- Kommentare dienen der besseren Lesbarkeit und Dokumentation.
- Beispiel
# Dieses Skript gibt den aktuellen Wochentag aus
Dateiattribute
- Damit ein Skript direkt gestartet werden kann, muss es die Ausführungsrechte besitzen.
chmod +x mein_skript.sh
Aufruf eines Skripts
- Ein Skript kann auf zwei Arten ausgeführt werden:
- Über den Interpreter explizit:
bash mein_skript.sh
- Direkt, wenn es ausführbar ist:
./mein_skript.sh
Pfadangabe
- Wenn das Skript nicht im PATH-Suchpfad liegt, muss der relative oder absolute Pfad angegeben werden.
./skripte/backup.sh
/home/thomas/bin/update.sh
Empfohlene Konventionen
- Verwende für Skripte die Endung .sh.
- Jedes Skript sollte eine Kopfzeile mit Zweck, Autor, Datum und Version enthalten.
- Vermeide absolute Pfade innerhalb von Skripten, wenn es nicht notwendig ist.
- Teste Skripte zuerst mit bash -n (Syntaxprüfung) oder bash -x (Debugmodus).
- Beispielkopf für Schulungsskripte
#!/bin/bash
# Zweck: Beispiel für Skriptaufbau
# Autor: Thomas
# Datum: 17.10.2025
# Version: 1.0