Python-Subprocess gibt nicht-null exit status nur in cron

Ich habe ein Python-Skript verwaltet eine Reihe von CasperJS Aufgaben und Prozesse das Ergebnis. Es läuft auch gut von der Befehlszeile aus, aber wenn ich das script in cron, bekomme ich die Fehlermeldung:

CalledProcessError: Command '['/path/to/casperjs', '/path/to/doSomething.js', 'args']' returned non-zero exit status 1

In Python, ich nenne CasperJS:

response = subprocess.check_output(['/path/to/casperjs', '/path/to/doSomething.js', 'args'], shell=True)

Habe ich versucht shell=False und Popen als gut, aber ich bekomme das gleiche Ergebnis. Ich habe auch versucht, den gesamten Befehl eine Zeichenkette (anstatt von Listen), aber das hat auch nicht geholfen.

Läuft '/path/to/casperjs /path/to/doSomething.js args' gibt exit-code 0 bei der Ausführung in der shell.

Außerdem habe ich PATH=/usr/bin:/bin:/sbin:/usr/local/bin zu meiner crontab ohne Erfolg. (Wie vorgeschlagen in diese Frage.)

Irgendwelche Ideen, warum bin ich nur immer diese Fehler im cron? Danke!!

EDIT: In übereinstimmung mit der Antwort unten, Einstellung shell=False und stderr=subprocess.STDOUT gemacht alles funktioniert...

InformationsquelleAutor arboc7 | 2012-04-08

Schreibe einen Kommentar