문제
이메일을 보내거나 로그를 생성하지 않고 매일 오후 11시 59분에 X 스크립트를 실행하도록 crontab을 설정하려면 어떻게 해야 합니까?
지금 내 crontab은 다음과 같습니다.
@daily /path/to/script.sh
해결책
crontab -e를 수행할 때 다음을 시도하십시오.
59 23 * * * /usr/sbin/myscript > /dev/null
그 의미는:매월 평일 59분, 23시간(*)에 myscript를 실행합니다.
보다 남자 크론 탭 더 많은 정보와 예를 보려면.
다른 팁
후속 조치 svrist의 답변, 쉘에 따라 2>&1이 가야 합니다. ~ 후에 > /dev/null 그렇지 않으면 stderr의 출력이 계속 표시됩니다.
다음은 stdout과 stderr을 모두 침묵시킵니다:
59 23 * * * /usr/sbin/myscript > /dev/null 2>&1
다음은 stdout을 침묵시키지만 stderr은 여전히 나타납니다(stdout을 통해):
59 23 * * * /usr/sbin/myscript 2>&1 > /dev/null
IO 리디렉션에 관한 고급 Bash 스크립팅 가이드 장 좋은 참고 자료입니다. 몇 가지 예를 보려면 2>&1을 검색하세요.
위의 응답으로 stderr에 작성된 텍스트가 포함된 이메일을 받게 됩니다.어떤 사람들은 그것을 리디렉션하고 대신 스크립트가 로그를 작성하는지 확인합니다.
... 2>&1 ....
제휴하지 않습니다 StackOverflow