
배포 스크립트가 있고 그 안에 cron 작업을 추가하려고 합니다. 이것은 stackoverflow에서 찾은 코드입니다. 저는 데비안 8을 사용하고 있습니다.
# ADD CRON
crontab -l > mycron
echo "10 * * * * cd /var/www/test/ && ./test" >> mycron
crontab mycron
rm mycron
이 명령을 실행하면 다음과 같은 응답을 받습니다.no crontab for root
여기서 내가 뭘 잘못하고 있는 걸까요? bash 스크립트를 사용하여 이 cron 작업을 추가할 수 있도록 하려면 어떻게 해야 합니까? 감사합니다.
답변1
(a) 루트의 crontab이 처음에는 비어 있고 (b) -e
옵션이 셸에 설정된 것처럼 들립니다.
사용자의 crontab 파일이 비어 있으면 crontab -l
상태 1로 종료됩니다.
옵션을 사용하여 쉘이 실행 중인 경우 -e
실패 시 즉시 종료됩니다(0이 아닌 상태로 종료하는 것으로 정의됨).
이 설정을 확인하려면 errexit
의 출력에서 를 찾으십시오 . echo $SHELLOPTS
를 사용하여 현재 쉘에서 이를 끄십시오 set +e
.