내 cron 작업 파일에는 두 개의 cronjob이 정의되어 있습니다.
#Yo1 MAILTO="[email protected]"
*1****wget -O - -q "http://example.com/cron/test1.php">/dev/null 2>&1
#Yo1 MAILTO="[email protected]"
*15****wget -O - -q "http://example.com/cron/test2.php">/dev/null 2>&1
The PHP files are simple just sending mails with different subjects.
문제는 두 cronjob이 1분마다 동시에 실행된다는 것입니다. 하지만 보시다시피 저는 두 cronjob이 서로 다른 시간에 실행되기를 원합니다. 첫 번째는 1분에 한 번, 두 번째는 15분마다입니다.
이 문제를 해결하는 데 도움을 주실 수 있나요? 나는 무엇이 잘못되었는지 모른다.
답변1
맨페이지에 따르면 crontab(5)
다음을 지정할 수 있습니다.목록 (0,15,30,45)
또는속도 (*/15)
.
따라서 다음 crontab 항목을 사용할 수 있습니다.
#Yo1 MAILTO="[email protected]"
* 1 * * * * wget -O - -q "http://example.com/cron/test1.php">/dev/null 2>&1
#Yo1 MAILTO="[email protected]"
*/15 * * * * wget -O - -q "http://example.com/cron/test2.php">/dev/null 2>&1
0,15,30,45
. 보다 이식성을 선호합니다 */15 * * * *
.
답변2
크론은 최소 1분 동안만 허용됩니다. 당신이 할 수 있는 일은 작업을 실행한 다음 1초 동안 휴면하는 무한 루프가 포함된 쉘 스크립트를 작성하는 것입니다. 이렇게 하면 작업 자체에 걸리는 시간에 따라 작업이 대략 1초마다 실행됩니다.