Aufzucht und Hege von Shell-Scripts: Shebang
Was soll diese komische "#!"-Zeile am Anfang eines Scripts?
Wenn die erste Zeile eines Scripts mit dem "Shebang" (also der Zeichenfolge #!) beginnt, dann ist der nachfolgende Pfad für den Kernel der Pfad des Interpreters, mit dem das Script ausgeführt werden soll. Fehlt die Zeile, dann wird das Script mit der Default-Shell des Systems (meist /bin/sh) ausgeführt. Die Zeile ist also nicht nur für Shell-Scripts wichtig, sondern für jede interpretierende Sprache (wie z. B. Perl, Tcl, Python, ...).
Das ist auch der Grund, warum man mit dieser Zeile aufpassen muss: Wenn Ihr ein Script schreibt, das eine bestimmte Shell voraussetzt, dann solltet Ihr hier auch diese Shell angeben, sonst wird unter Umständen die falsche Shell aufgerufen:
jan@jack:~> ls -l /bin/sh lrwxrwxrwx 1 root root 4 2004-04-28 22:19 /bin/sh -> bash #! /bin/sh # bash wird nur dann aufgerufen, wenn der Link wie oben sitzt #! /bin/bash # bash wird aufgerufen #! /usr/bin/ksh # ksh wird aufgerufen

