J'ai un travail cron qui est configuré comme ceci dans mon crontab:
*/1 * * * * Sudo /home/pi/coup/sensor.py >> /home/pi/sensorLog.txt
Il place stdout dans sensorLog.txt, et tout stderr qu'il génère est mis dans un e-mail.
Je veux que stdout et stderr entrent dans sensorLog.txt, j'ai donc ajouté 1>&2
à la crontab, qui est censée faire passer stderr au même endroit que stdout. Cela ressemble maintenant à ceci:
*/1 * * * * Sudo /home/pi/coup/sensor.py >> /home/pi/sensorLog.txt 1>&2
Maintenant, stdout et stderr sont tous les deux mis dans un e-mail, et rien n'est ajouté au fichier. C'est l'opposé de ce que j'essaie d'accomplir.
Comment obtenir à la fois stdout et stderr pour être redirigé vers le fichier?
C'est l'inverse:
*/1 * * * * Sudo /home/pi/coup/sensor.py >> /home/pi/sensorLog.txt 2>&1
2>&1
redirigera l'erreur standard (2) vers la sortie standard (1) qui, à son tour, a été redirigée vers votre fichier journal. Donc, à la fin, stderr et stdout iront à votre sensorLog.txt