Script mit Parameter als at-Job starten

Datum: 2007-06-10
Quelle: mrunix.de

Worum ging es?

Es soll ein Script mit verschiedenen Parametern als at-Job gestartet werden. Das Problem dabei ist, dass at keine Parameter akzeptiert.

Code
# Links erzeugen / create links
for p in par1 par2 par3; do
  ln /home/user/test.sh "/home/user/test ${p}.sh"
done
# at-Jobs starten / start the at jobs
at -f "/home/user/test par1.sh" now
at -f "/home/user/test par2.sh" now
at -f "/home/user/test par3.sh" now
# inerhalb des Scripts / within the script:
# aus dem Scriptnamen den Parameter extrahieren
# extract the parameter from the script name
PAR=`basename "$0" .sh | cut -f2 -d" "`
Beschreibung

Zuerst wird für jedes Argument ein Link erzeugt. Damit existiert ein Script namens test parX.sh für jeden Parameter und kann per at-Kommando gestartet werden. Innerhalb des Scripts wird der Wert des Parameters über die basename - cut - Zeile ermittelt und kann dann innerhalb des Scripts verwendet werden.