Also, was ich versuche, ist ein Programm aus einem Python-Skript ausführen, die ich in der Shell ausführen. Ich habe andere Fragen lesen, damit ich es mit tun können:Wie kann ich eine bash ausführbare Datei von einem Python-Skript mit dem gleichen I/O ausführen?
def bash(cmd):
subprocess.Popen(cmd, shell=True, executable='/bin/bash')
bash('./my/file')
Und das erste Problem dabei ist, möchte ich oft das Programm von Shell beenden. Normalerweise, wenn ich "./my/file" vom Terminal habe, könnte ich es mit ctrl + c stoppen. Aber mit subprocess läuft es im Hintergrund irgendwie und ich kann es nur durch den Befehl "top" töten und es durch pid in bash töten. Aber das Programm bringt eine große Anzahl von Prozessen so schnell hervor, dass ich es auf eine vernünftige Weise buchstäblich nicht töten kann.
Auch die zweite Sache, die ich tun möchte, ist zu warten, bis das Programm fertig ist, bevor ich mehr von meinem Python-Skript ausführe. Ich habe versucht, Einstellung ...
Aber das stoppt eigentlich das Programm fast sofort nach dem Start.
Ich konnte die Skripte einfach separat ausführen, aber ich sehe keine Möglichkeit, die Ergebnisse aus dem Programm zu verwenden, ohne ein drittes Skript zu erstellen, das ich nach dem ursprünglichen Python-Skript ausführen muss. Irgendwelche Vorschläge?
Danke für die Antwort, ich bin ein wenig beschäftigt, so habe ich nur die zweite überprüft und es funktioniert etwas, da es eine Ausgabe aus dem Programm korrekt, aber manchmal verhindert, dass das Programm ausgeführt wird. –