Einem Skript können Parameter übergeben werden. Hierzu werden üblicherweise [OPTIONS] verwendet, die entweder eine Funktion aktivieren oder auch einen zusätzlichen Parameter übergeben.
Mit folgendem Quelltext können Übergabeparameter ausgewertet werden:
#! /bin/bash function err_text { while [ $# -gt 0 ] ; do echo "$1" 1>&2 # Ausgabe auf stderr shift done echo "`basename $0` [-ab -c Wert -d Wert] file" 1>&2 # Ausgabe auf stderr exit 1 } # Sortieren und überprüfen der Parameter (":" bedeutet, dass der vorangestellte Parameter # zusätzlich einen Wert benötigt) set -- `getopt "abc:d:" "$@"` || err_text # Startparameter setzen variable_a=0 variable_b=0 variable_c="" variable_d="" # Parameter in Endlosschleife abfragen # Bei Parametern mit Übergabeparameter muss stets ein "shift" ausgeführt werden! while : ; do case "$1" in -a) variable_a=1;; -b) variable_b=1;; -c) shift; variable_c=$1;; -d) shift; variable_d=$1;; --) break;; esac shift [ $# -eq 0 ] && break # Fehler in den angegebenen Parametern done shift [ $# -lt 1 ] && err_text # kein Dateiname wurde übergeben # Dateien abarbeiten while [ $# -ge 1 ]; do if [ -f "$1" ]; then # else err_text "`basename $0` - Datei '$1' existiert nicht" fi shift done