Befehl zum Ausführen in der Unix Shell

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
linde_user
User
Beiträge: 25
Registriert: Mittwoch 20. April 2005, 11:47

Montag 13. Juni 2005, 10:41

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
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Montag 13. Juni 2005, 10:53

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
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
BlackJack

Montag 13. Juni 2005, 22:22

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.
Antworten