스크립트 출력을 txt 파일에 저장하려고 하면 내 cron 작업이 실행되지 않습니다.

스크립트 출력을 txt 파일에 저장하려고 하면 내 cron 작업이 실행되지 않습니다.

저는 Python 스크립트를 하루에 두 번(오전 8시에 한 번, 오후 8시에 다시) 실행하려고 합니다. 내 희망은 스크립트 출력을 내 컴퓨터의 LOG_{date-time}.txt라는 txt 파일에 저장하여 스크립트에 문제가 있을 경우 "로그" 파일을 볼 수 있도록 하는 것이었습니다. 다음 크론 작업을 설정했습니다.

0 8,20 * * * python3 /script/working/directory/Script.py > /script/working/directory/logs/LOG_"$(date +"%d-%m-%Y")".txt

cron 작업을 설정한 후 오후 8시 이후에 스크립트를 확인했는데 스크립트가 아직 실행되지 않은 것을 발견했습니다. (스프레드시트 파일을 업데이트하고 각 업데이트 후에 타임스탬프를 남기도록 설정했습니다.)

나는 스스로 약간의 문제 해결을 수행했고 출력 부분 없이 cron 작업을 실행하면 작동한다는 것을 발견했습니다. (또한 cron 작업 로그가 시스템 시간 대신 UTC로 기록된다는 것도 알았지만 다른 시간에 문제가 됩니다):

0 8,20 * * * python3 /script/working/directory/Script.py

여기에 제가 놓친 것이 있나요? 스크립트 출력을 파일에 저장하면 안 되나요? 나는 여기에 있는 것에 대해 약간 새로운 것이고 이것과 함께 배우려고 노력했지만 이것으로 어디로 가야할지 잘 모르겠습니다. 디버깅 목적으로 스크립트의 출력을 저장할 수 있다면 좋을 것입니다.

답변1

제가 추측할 수 있는 주된 이유는 로그 경로가 존재하지 않거나 로그 경로에 쓸 수 있는 권한이 없기 때문입니다.

cron 대신 수동으로 명령을 실행해 보세요.

python3 /script/working/directory/Script.py > /script/working/directory/logs/LOG_"$(date +"%d-%m-%Y")".txt

터미널에 오류가 표시될 가능성이 높습니다.

관련 정보