내 cronjob이 지정된 시간에 실행되도록 하려면 어떻게 해야 합니까?

내 cronjob이 지정된 시간에 실행되도록 하려면 어떻게 해야 합니까?

내가 설정한 특정 시간에 cronjob이 실행되는지 확인하는 방법을 알고 싶습니다. 어쨌든 그 시간을 기다리지 않고 이것을 테스트할 수 있습니까?

이것은 내 crontab -l 결과입니다.

root@work:~$ crontab -l
3 */23 * * * /opt/lampp/bin/php /opt/lampp/htdocs/site/cron/my_script.php > /dev/null

내 값이 정확하다면 내 cronjob은 매일 밤 정각에 오후 11시에 실행되고 모든 출력을 /dev/null에 기록하여 깨끗하게 유지합니까?

감사해요.

답변1

확실하게 알 수 있는 유일한 방법은 실행하고 결과를 확인하는 것입니다. 출력을 어딘가에 기록하고 검사하도록 명령을 수정하거나 출력을 이메일로 보내도록 할 수 있습니다.

디버깅 목적으로 약 5분 안에 명령을 실행하는 또 다른 동일한 줄을 추가할 수 있습니다. 예를 들어. 지금이 오후 3시 13분이라면 다음 줄을 추가하여 3분 후에 명령을 테스트할 수 있습니다.

# Run at 15:16
16 15 * * * /opt/lampp/bin/php /opt/lampp/htdocs/site/cron/my_script.php > /dev/null

그런데. 매일 오후 11시에 실행하려면 다음을 원할 수도 있습니다. 또한 2>&1모든 출력이 다음으로 이동하는지 확인하기 위해 stderr을 stdout() 으로 리디렉션했습니다 /dev/null.

# At minute 0 of hour 23 on every day, every month, every day of the week:
0 23 * * * /opt/lampp/bin/php /opt/lampp/htdocs/site/cron/my_script.php > /dev/null 2>&1

답변2

다른 좋은 답변을 보완하려면 온라인 테스트 페이지를 사용하여 cron 설정이 정상인지 확인할 수 있습니다.

답변3

가장 쉬운 방법은 지금부터 5분 후에 크론 작업을 미리 설정하고 해당 작업이 작동하는지 확인하는 것입니다. 또한 cron 실행을 날짜가 지정된 파일에 기록하는 것도 좋은 형식입니다. 이렇게 하면 실제로 실행되는 #1과 올바르게 실행되는 #2를 볼 수 있습니다.

시스템 시간도 올바른지 확인하십시오.

관련 정보