![cronjob의 스크립트가 작동하지 않습니다: "입력 파일을 열 수 없습니다"](https://linux55.com/image/119086/cronjob%EC%9D%98%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EA%B0%80%20%EC%9E%91%EB%8F%99%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4%3A%20%22%EC%9E%85%EB%A0%A5%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EC%97%B4%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4%22.png)
이것은 내 코드입니다 scriptrun
(내 쉘 스크립트 이름):
php -f a1.php; php -f b2.php; sh -e c3.txt
이것은 내 cronjob 명령입니다. /home/telia/www/robot/scriptrun
루트로 생성되었습니다.
스크립트를 실행하면 오류 메시지가 나타납니다.
Could not open input file: a1.php
Could not open input file: b2.php
scriptrun 파일에는 이미 +x가 있고 시도했습니다.
/usr/bin/php -f a1.php; /usr/bin/php b2.php ;sh -e c3.txt
PHP 파일에 777을 chmoding하려고 시도했지만 아무 것도 변경되지 않았습니다.
수동으로 시도하면 스크립트가 완벽하게 실행되지만 cronjob에서는 작동하지 않습니다.
답변1
언제나처럼댓글로 답변해주세요, 문제는 a1.php 및 b2.php 스크립트가 cron 작업이 실행되는 $HOME 디렉토리에 없다는 것 같습니다. 스크립트 cd /to/that/path
에 명령을 추가 하거나 명령을 변경하여 이러한 스크립트에 대한 전체 경로를 사용하십시오.scriptrun
php