실행 대기 중인 test.php 스크립트는 로컬 환경에서 실행 가능하며, Linux에서는 php test.php를 수동으로 실행하여 실행할 수도 있습니다.
<code>$name='./log/20161025.txt'; if(file_exists($name)) { file_put_contents($name, '定时任务开始了'); }</code>
crontab -e를 실행하여 예약된 작업 편집
<code>* * * * * /usr/bin/php /home/wwwroot/demo/test.php > /var/log/cron.log </code>
내 시도:
ps -ef | grep cron을 실행하면 예약된 작업 프로세스를 확인할 수 있는데, 이는 예약된 작업이 실행 중임을 의미하므로 예약된 작업이 시작되지 않는 문제는 없습니다
/usr/sbin/service cron restart를 실행하여 예약된 작업을 다시 시작하세요. cron.log에는 기록이 없고 20161025.txt에는 내용이 없습니다
chomd +x test.php를 실행하여 권한을 높였지만 효과가 없습니다
which php를 실행하고 /usr/bin/php를 반환합니다. php 경로가 정확합니다
아직 가능한 이유를 찾을 수 없습니다. 아이디어를 주세요
보충:
최종 테스트 예약 작업을 실행할 수 있습니다
<code>$name=__DIR__.'/log/20161025.txt'; if(file_exists($name)) { file_put_contents($name,date('Y-m-d H:i:s',time())."\r\n",FILE_APPEND); }</code>
스크립트를 사용하여 1분마다 실행되는 현재 시간을 인쇄하세요
실행 대기 중인 test.php 스크립트는 로컬 환경에서 실행 가능하며, Linux에서는 php test.php를 수동으로 실행하여 실행할 수도 있습니다.
<code>$name='./log/20161025.txt'; if(file_exists($name)) { file_put_contents($name, '定时任务开始了'); }</code>
예약된 작업을 편집하려면 crontab -e를 실행하세요
<code>* * * * * /usr/bin/php /home/wwwroot/demo/test.php > /var/log/cron.log </code>
내 시도:
ps -ef | grep cron을 실행하면 예약된 작업 프로세스를 확인할 수 있는데, 이는 예약된 작업이 실행 중임을 의미하므로 예약된 작업이 시작되지 않는 문제는 없습니다
/usr/sbin/service cron restart를 실행하여 예약된 작업을 다시 시작하세요. cron.log에는 기록이 없고 20161025.txt에는 내용이 없습니다
chomd +x test.php를 실행하여 권한을 늘려도 효과가 없습니다
which php를 실행하고 /usr/bin/php를 반환합니다. php 경로가 정확합니다
아직 가능한 이유를 찾을 수 없습니다. 아이디어를 주세요
보충:
최종 테스트 예약 작업을 실행할 수 있습니다
<code>$name=__DIR__.'/log/20161025.txt'; if(file_exists($name)) { file_put_contents($name,date('Y-m-d H:i:s',time())."\r\n",FILE_APPEND); }</code>
스크립트를 사용하여 1분마다 실행되는 현재 시간을 인쇄하세요
php 경로는 맞는데 예약된 작업을 시작할 때 작업 디렉터리가 php 파일이 있는 디렉터리가 아니어서 코드를 변경해야 합니다
<code>$name=__DIR__.'/log/20161025.txt'; if(file_exists($name)) { file_put_contents($name, '定时任务开始了'); }</code>
경로가 잘못된 것 같습니다. php 스크립트에서 상대주소를 절대경로로 바꿔보세요
PHP 경로는 정확합니다. PHP 코드의 일부 경로에 오류가 있습니다. 명령줄 프로그램을 작성할 때 상대 디렉터리와 같은 종속성을 사용하지 마세요.
실수는 상대 디렉터리에 있습니다. crontab을 시작하여 PHP 스크립트를 실행하고 수동으로 한 번 실행하면 오류가 어디에 있는지 알 수 있습니다.
상대 경로를 인쇄하세요. 상상했던 길이 아니어야 합니다.
locate 20161025.txt
파일이 생성되었는지 확인할 수 있습니다. locate
updatedb
전.
권한 문제를 확인하려면 다음 crontab -l을 실행하여 예약된 작업을 성공적으로 추가했는지 확인하세요
<code>[DongYao$ 19:28]➞ $crontab -l * * * * * /bin/echo `date` >> /var/log/test.log You have mail in /var/mail/DongYao [DongYao$ 19:39]➞ $ [root$ 19:37]➞ $tail -f /var/log/test.log Mon Oct 24 19:38:00 CST 2016 Mon Oct 24 19:39:00 CST 2016 </code>