작업이 cron에서 실행되지 않고 수동으로 실행 중입니다.

작업이 cron에서 실행되지 않고 수동으로 실행 중입니다.

이 사이트에서 유사한 게시물을 살펴봤지만 내 검색어와 일치하는 게시물이 없습니다.

내 crontab에 다음이 있지만 작동하지 않습니다.

 * * * * * perl sc.pl

아래와 같이 수동으로 시도하면 출력이 나타납니다.

**perl sc.pl**

이 문제를 해결하도록 도와주세요.

답변1

@glenn jackman이 언급한 것처럼 일반적으로 인수에 파일의 절대 경로나 실행 파일의 전체 경로를 지정해야 하는 경우가 많습니다.

프로그램(cron, 현재 쉘/터미널 등)을 실행하려는 프로세스 PATH에는 실행 파일(예: perl)을 찾을 디렉터리를 지정하는 환경 변수가 있습니다. 실행 파일 실행은 일반적으로 현재 작업 디렉터리(또는 경로가 없는 파일 이름)에 대한 상대 경로를 기반으로 하며, 검색하지 않거나 위치를 마법처럼 알지 못합니다. cron 작업은 일반적으로 대화형 터미널 세션과 동일한 경로 변수를 갖지 않으며 스크립트 파일과 동일한 디렉터리에서 시작되지 않을 수 있습니다(특히 다음과 같이 해야 하는 경우).CD수동으로 실행하기 전에 디렉토리에 저장 perl sc.pl)

우리의 첫 번째 제안은 Perl 바이너리에 대한 절대 경로를 시도하고pl스크립트. 예:

* * * * * /usr/bin/perl /path/to/sc.pl

관련 정보