Seite 1 von 1

Linux Befehl direkt ausführen

Verfasst: Donnerstag 20. März 2008, 14:46
von HorstJENS
Sehr dumme Frage: Ich möchte aus einem Python-Skript heraus einen linux-Befehl direkt ausführen, z.B.:
ls >> ergebnis.txt
und einige mplayer-Befehle. Ich möchte nicht das subprozess-modul verwenden;
sonden will warten bis die Verarbeitung des Befehles fertig ist.

Welchen Befehl verwende ich da ?

Verfasst: Donnerstag 20. März 2008, 14:55
von HL
Hallo HorstJENS,

So funktioniert es:

Code: Alles auswählen

#!/usr/bin/python
import os
os.system('ls >> ergebnis.txt')
Grüße,
HL

Verfasst: Donnerstag 20. März 2008, 15:02
von Trundle
`subprocess.Popen`-Objekte haben eine Methode `wait`, die wartet, bis der Kindprozess beendet wurde.

Verfasst: Donnerstag 20. März 2008, 15:11
von BlackJack
Oder das `subprocess`-Modul, damit kann man auch auf das Ende des externen Prozesses warten. In der Doku sind diverse "Rezepte" um die bisherigen Funktionen in `os` etc. zu ersetzen.

danke

Verfasst: Donnerstag 20. März 2008, 17:37
von HorstJENS
Danke !