Seite 1 von 1

Befehl zum Ausführen in der Unix Shell

Verfasst: Montag 13. Juni 2005, 10:41
von linde_user
Hallo an alle hilfsbereiten Programmierer,
ich beschreibe hier mal mein Problem: ich möchte aus meinem Python- Skript heraus eine andere Pythondatei starten. Das soll auf jeden fall Extern geschehen, also nicht über import o. ä.. Dabei stelle ich mir zwei Möglichkeiten vor: einmal über einen "Datei öffnen" Befehl, und einmal über das senden einer Zeichenkette direkt in die Komando- Zeile meiner Unixshell mit einem anschliessenden "return"- Befehl oder ähnliches.(also "python meineDatei.py").
Weiß jemand ob das überhaupt geht?
Hintergrund ist, dass ich ein Programm mit einem alten Python Compiler habe, welchen ich bei meiner Arbeit unbedingt als ersten Schritt ausführen muss. Wenn ich mit diesem Compiler einen Befehl ausführen könnte, der ein zweites Python- Skript in der Unix- Shell ausführt, könnte ich mit der dortigen neueren Version von Python weiterarbeiten.

Ich danke schon mal für die Hilfe

Re: Befehl zum Ausführen in der Unix Shell

Verfasst: Montag 13. Juni 2005, 10:53
von gerold
linde_user hat geschrieben: ich möchte aus meinem Python- Skript heraus eine andere Pythondatei starten. Das soll auf jeden fall Extern geschehen, also nicht über import o. ä..
Hi linde_user!

Wenn dir die Rückgabe egal ist:
os.system

Wenn du die Rückgabe des Befehls brauchst:
popen oder spawn in allen ihren Varianten.

http://python.org/doc/2.4.1/lib/os-process.html

Seit 2.4 steht auch das Modul subprocess für solche Fälle zur Verfügung.

http://python.org/doc/2.4.1/lib/module-subprocess.html

mfg
Gerold
:-)

Re: Befehl zum Ausführen in der Unix Shell

Verfasst: Montag 13. Juni 2005, 22:22
von BlackJack
linde_user hat geschrieben:Hintergrund ist, dass ich ein Programm mit einem alten Python Compiler habe, welchen ich bei meiner Arbeit unbedingt als ersten Schritt ausführen muss. Wenn ich mit diesem Compiler einen Befehl ausführen könnte, der ein zweites Python- Skript in der Unix- Shell ausführt, könnte ich mit der dortigen neueren Version von Python weiterarbeiten.
Kannst Du das erste Program nicht schon mit dem neuen Python-Interpreter laufen lassen? Python ist im allgemeinen ziemlich rückwärtskompatibel.