PASSTHRU () + PIPE IN SUBPROCESS= TRACEBACK (letzter Anruf zuletzt): (...) in stdout= subprocess.pipe)
-
14-12-2019 - |
Frage
Ich habe einen Fehler, wenn ich PASSTHRU () verwende, um ein Python-Skript (mithilfe von Unterprozess und Pipe) mit PHP aufzurufen.
Hier ist der Fehler:
Traceback (letzter Anruf zuletzt): Datei "... / Desktop / H.PY", Zeile 11, in stdout= subprocess.pipe) #set den Convert-Befehl auf und leiten Sie den Ausgang an eine Rohrdatei "/ System /Bibliothek / Frameworks / Python.Framework / Versionen / 2.5 / lib / python2.5 / subprocess.py ", linie 593, in init irrerad, errwrite) Datei" / System / Bibliothek / Frameworks / Python.Framework / Versionen / 2.5 / lib / python2.5 / subprocess.py ", Zeile 1079, in _execute_child Heben Sie kind_exception oersror: [errno 2] Keine solche Datei oder Verzeichnis
der PHP PASSTHRU:
generasacodicetagpre.meine Python-Linie, die den Fehler verursacht:
generasacodicetagpre.So verwenden Sie stdout= subprocess.pipe ordnungsgemäß im Unterprozess?
Ich freue mich auf Ihre Antworten.
Lösung
Es sieht so aus, als ob Ihr Pfad das Verzeichnis nicht enthält, einschließlich des Befehls "Konvertieren".Ersetzen, um zu ersetzen:
generasacodicetagpre.mit:
generasacodicetagpre.wo "/ voll / path / to / convert" möglicherweise so etwas wie "/ usr / bin / konvertiert".
Andere Tipps
Es ist, weil es über eine Shell ausgeführt werden muss, sodass Sie das Shell-Argument auf TRUE einstellen müssen:
generasacodicetagpre.