|
|
|
10.2 Fehlerarten
Wenn das Script fertig gestellt ist und es treten Fehler auf, unterscheidet man gewöhnlich zwischen mehreren Fehlerarten:
|
Syntaxfehler – der wohl am häufigsten auftretende Fehler ist ein Syntaxfehler. Hierbei reicht ein einfacher Tippfehler bspw. in einem Schlüsselwort aus. Schreiben Sie einmal thn statt then, haben Sie schon einen Syntaxfehler. Leider lassen sich solche Fehler häufig nicht so einfach finden. Bspw. gibt bei mir ein Script, in dem then falsch geschrieben ist, folgende Fehlermeldung aus: |
you@host > ./script1
./script1: line 19: syntax error near unexpected token `fi'
./script1: line 19: `fi'
|
Zu einem sehr gern gemachten Syntaxfehler gehört auch die Verwendung von ' anstelle eines ` bei einer Kommando-Substitution. |
|
|
|
Logische Fehler – bei diesem Fehler hat sich ein Denkfehler eingeschlichen. Das Script wird zwar ohne eine Fehlermeldung ausgeführt, führt aber nicht zum gewünschten Ergebnis. Ein einfaches Beispiel: |
if [ ! -e $creatfile ]
then # Nein ...
touch $creatfile # Datei anlegen ...
# Jetzt nochmals überprüfen ...
if [ -e $creatfile ]
then
echo "Konnte $creatfile nicht anlegen"
exit 1 # Script erfolglos beenden
else
echo "$creatfile erfolgreich angelegt"
fi
fi
|
Sofern die Datei $creatfile nicht existiert, gibt das Script Folgendes aus: |
|
|
you@host > ./createfile2
Konnte atestfile.txt nicht anlegen
|
Und das, obwohl die Datei angelegt wurde. Hier haben Sie es nicht – wie man häufig vermutet – mit mangelnden Rechten zu tun, sondern mit einem vergessenen Negationszeichen (!) in der zweiten if-Anweisung. |
|
|
# Jetzt nochmals überprüfen ...
if [ ! -e $creatfile ]
|
Ein einfacher Fehler, der aber häufig nicht gleich gefunden wird. |
|
|
|
Fehler der Shell oder der Kommandos – dies wird wohl der seltenste Fall eines Fehlers sein. Dabei handelt es sich um einen Fehler, der nicht Ihre Schuld ist, sondern die des Programmierers der Shell oder des Kommandos. Hier bleibt Ihnen nichts anderes übrig, als den Autor des Kommandos zu kontaktieren und ihm diesen Fehler mitzuteilen oder auf ein anderes Kommando auszuweichen. |
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.
|
|
|
|
|
|
|
|
|
Lieferung |
|
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz Info
|
|
|
|