Ich muss ein Skript im Hintergrund über einen Dienst ausführen.Die Ausführung des Skripts mit Popen schlägt fehl
Der Dienst startet das Skript mit Popen.
p = Popen('/path/to/script/script.py', shell=True)
Warum funktioniert das folgende Skript nicht, wenn ich die Dateischreibvorgänge in die for-Schleife einschließe?
#!/usr/bin/python
import os
import time
def run():
fd = open('/home/dilleyjrr/testOutput.txt', 'w')
fd.write('Start:\n')
fd.flush()
for x in (1,2,3,4,5):
fd.write(x + '\n')
fd.flush()
time.sleep(1)
fd.write('Done!!!!\n')
fd.flush()
fd.close()
if __name__ == '__main__':
run()
Ich habe Berechtigungen für die Datei als 777. Ich habe es nur auf/tmp, Ihr Recht, das wäre besser für diese Prüfung geschaltet. Die Ergebnisse sind die gleichen, wenn ich die Loop-Datei auskommentiert schreibt die Ausgabe ist ... Start: Fertig !!!! Mit ihnen enthält der Ausgang ist ... Start: – Ron
Tx Ron für die Überprüfung der Berechtigungen Problem - aufgefordert, mich zu einer gründlichen Code-Überprüfung und finde Ihren Fehler finden Sie in meiner gerade bearbeiteten Antwort. –
Danke --- Ich bin zu neu für Python, aber ich vergesse immer wieder, dass du das nicht kannst, wie du es in Perl kannst. Jetzt, wo das gelöst ist, kann ich meine Probleme mit dem echten Skript lösen. (Denken Sie, dass sie umweltbezogen sind.) Ich werde diesen verwenden, um die Umgebung auszuspucken. – Ron