터미널에서 완벽하게 실행되는 스크립트를 작성했지만 crontab을 통해 호출하면 오류가 발생합니다. 문제가 내 스크립트가 아니라 cron 환경에 있다는 것을 알아내는 데 시간이 좀 걸렸습니다.
그래서 온라인에서 다양한 게시물을 읽은 후 몇 가지 옵션을 시도했습니다.
* * * * * PATH=/home/sam/bin:/home/sam/scriptbin/ /path/to/script
쓸모 없는
* * * * * bash -lc /path/to/script
쓸모 없는
* * * * * /path/to/script
쓸모 없는
`PATH=blahdeblah
* * * * * jobdejob` Didn't work
OPENSUSE에서 crontab의 변수를 변경하거나 $PATH
cron 파일에 포함되어 제대로 작동하도록 하는 방법입니다. 저는 오픈수세11을 사용하고 있습니다.
감사해요!
답변1
두 가지 방법 중 하나는 일부 cron 데몬을 사용하여 환경 변수를 설정할 수 있다는 것입니다.
PATH=blahdeblah
* * * * * jobdejob
둘째, env(1)
실제 작업을 실행하는 유틸리티를 사용합니다.
* * * * * env PATH=blahdeblah jobdejob
삼! 크론 작업에서는 정규화된 경로를 사용하세요. 아니요, 아니요, Jeff가 말했듯이 스크립트에서 경로를 설정하는 방법에는 네 가지가 있습니다.
#!/bin/sh
PATH=blahdeblah
...
다섯째, 무자비한 헌신 PATH
.