일정을 변경하는 것 외에 매일 실행되도록 예약 된 cron 작업이 있는데, 명령이 제대로 작동하는지 확인하기 위해 현재 명령의 테스트 실행을 수행 할 수있는 다른 방법이 있습니까?
답변
내가 아는 한 cron에는 특별한 목적이 있기 때문에 직접 수행 할 수있는 방법이 없습니다. 실행은 특정 시간에 명령을 예약합니다. 따라서 가장 좋은 방법은 crontab 항목을 수동으로 만들거나 환경을 제거하고 재설정하는 스크립트를 작성하는 것입니다.
답변
다음 명령으로 crontab을 강제로 실행할 수 있습니다.
run-parts /etc/cron.daily
답변
“크론 작업을 수동으로 즉시 실행”에 설명 된대로 크론 사용자 환경을 시뮬레이션 할 수 있습니다 . 이를 통해 cron 사용자로 실행될 때 작업이 작동하는지 테스트 할 수 있습니다.
링크에서 발췌 :
1 단계 :이 줄을 사용자의 crontab에 임시로 넣었습니다.
* * * * * /usr/bin/env > /home/username/tmp/cron-env
그런 다음 파일이 작성되면 꺼 냈습니다.
2 단계 : 나 자신을 크론 bash 스크립트로 만들었습니다.
#!/bin/bash
/usr/bin/env -i $(cat /home/username/tmp/cron-env) "$@"
그래서 문제의 사용자로서
run-as-cron /the/problematic/script --with arguments --and parameters