PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Skript bei fehler abbrechen



jack
14-02-2002, 14:44
Hallo!
Ich bin beim Skript-Programmieren noch ein großer Anfänger (mit wenig Unterlagen), und suche einen Befehl, der das Skript abbricht wenn ein Fehler auftritt.

zB.:
#!/bin/sh
ls -la
cp DATEIGIEBTESNICHT /home/ # Datei od Verz nicht gefunden
mv /home/DATEIGIEBTESNICHT user/ # Soll nicht mehr ausgeführt werden

mfg Jack

fork
14-02-2002, 15:28
Hi Jack,



#!/bin/bash
if cp XYZ dorthin
then echo kopieren erfolgreich!
mv dasda hierhin
else echo kopieren fehlgeschlagen!
fi


gut Bash-Doku gibt's bei www.linuxfibel.de oder bei www.prolinux.de oder bei www.64-bit.de

Für die allerersten Stolperfallen tut's die Shellscript-FAQ im FAQ-Bereich hier.

Gruß
Tobias

jack
14-02-2002, 16:14
Danke schön!

cu Jack

thommy
15-02-2002, 13:15
cp DATEIGIEBTESNICHT /home/ 2>/dev/null && mv /home/DATEIGIEBTESNICHT user/

So würde es die Linuxfibel tun;-)

Thomas

jean_luc_picard
08-05-2004, 11:20
Hallo Leute,

ich dachte bisher immer, dass ein "exit 1" im Skript dieses abbricht. Dies ist aber nicht der fall...
Ich habe hier ein recht langes for/while/if - Konstrukt, in dem auch Fehleingaben überprüft werden sollen. Sobald eine fehlerhafte Eingabe entdeckt wurde, soll das Skript komplett abbrechen. Es scheint mir jedoch, als würde nur die Weiterverarbeitung der aktuellen Schleife abbrechen.
Wie kann ich also durch einen Aufruf an beliebiger Stelle im Skript, dieses zum kompletten Abbruch bringen?

Gruß, Picard

edit:
Na toll, wie immer. Kaum poste ich ins Forum, fällt mir ein Fehler auf... :rolleyes:
exit 1 bricht das Skript natürlich ab....

DaTa
09-05-2004, 19:44
#/bin/sh
set -e
...