Python-Skript beenden - strange behaviour

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
drnicolas
User
Beiträge: 126
Registriert: Sonntag 24. Juli 2016, 10:32

Ich habe ein Python-Skript geschrieben, welches sich beenden soll falls ein Fehler auftritt.

Ich mache das mit sys.exit(-99) oder so ähnlich.

1. Ich muss dieses Programm aus einem bash-Skript heraus aufrufen. Das mache ich mit
python /path/skript.py args

Wenn ein Fehler auftritt beendet sich das bash-skript gleich mit. Ist das normal ?

2. WIe kann ich den Rückgabecode des python-skripts nutzen ?
BlackJack

@drnicolas: 1. Nein das ist nicht normal. Allerdings sind negative Rückgabewerte nicht so wirklich sinnvoll weil die den aufrufenden Prozess nicht nicht unverändert erreichen. Nur die unteren 8 Bit des `int`-Wertes werden berücksichtigt, bei -99 gibst Du also eigentlich den Wert 157 zurück.

2. Das kommt auf die Shell an. In POSIX-Shells ist der Wert an die Variable $? gebunden.
drnicolas
User
Beiträge: 126
Registriert: Sonntag 24. Juli 2016, 10:32

Okay, vielen Dank. Ich werde mein Skript anpassen und nochmal probieren.
Antworten