Seite 1 von 1

exit-code bei os.popen oder artverwandten Befehlen

Verfasst: Donnerstag 7. November 2013, 02:07
von mercurius
Hallo zusammen,

ich möchte innerhalb einer Schleife einen unrar-Befehl so lange aufrufen, bis das unrar den exit-code 0 zurückliefert, also erfolgreich war. (unrar t -pPassword dateiname), wobei password ein Element einer Liste ist, also liste[x].
Betriebssystem ist Linux, Python-Version 2.75.

Leider habe ich unter den diversen Möglichkeiten, den unrar-befehl abzusetzen keinen gefunden, bei dem ich den exit-code von unrar zurückerhalte.
Eventuell wäre es möglich, den Aufruf in try - except zu verpacken, aber da stört mich, daß bei jedem falschen PW eine exception ausgelöst und damit die Routine doch ziemlich verlangsamt wird. Oder mache ich da einen Denkfehler?

Als Anfänger bin ich dankbar für jeden zweckdienlichen Hinweis zur Lösung meines Problems.
Danke

Heinz

Re: exit-code bei os.popen oder artverwandten Befehlen

Verfasst: Donnerstag 7. November 2013, 06:09
von darktrym
Warum nimmst du nicht einfach rarfile?

Re: exit-code bei os.popen oder artverwandten Befehlen

Verfasst: Donnerstag 7. November 2013, 08:12
von BlackJack
@mercurius: Ansonsten ist zum ausführen von externen Programmen das `subprocess`-Modul zuständig. Da kann man auch den Exit-Code abfragen beziehungsweise gibt es sogar schon eine Funktion die einen Code ungleich 0 über eine Ausnahme meldet.

Re: exit-code bei os.popen oder artverwandten Befehlen

Verfasst: Sonntag 10. November 2013, 14:16
von mercurius
Danke für eure Antworten.

Heinz