![crontab에서 종료 상태를 사용하는 방법](https://linux55.com/image/90440/crontab%EC%97%90%EC%84%9C%20%EC%A2%85%EB%A3%8C%20%EC%83%81%ED%83%9C%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
Red Hat crontab에 다음 스크립트 줄을 추가했는데 스크립트는 토요일 오전 5시에 실행되어야 합니다. /var/scripts/PLW.pl
매주 토요일 아침 05:00에 스크립트를 실행합니다 . 스크립트의 종료 상태를 확인하고 싶습니다.
내 질문: 스크립트 줄 뒤에 crontab에 이와 같은 것을 추가하는 것이 가능합니까?
0 0 * * 5 /var/scripts/PLW.pl
[[ $? -eq 0 ]] && run_once.bash
따라서 종료 상태가 0이면 run_once.bash
스크립트가 활성화됩니다.
답변1
다음과 같은 작업을 수행할 수 있습니다.
0 0 * * 5 /usr/bin/python /var/scripts/PLW.pl && /bin/bash /path/to/run_once.bash
참고: && /bin/bash /path/to/run_once.bash
이는 이전 명령이 성공적으로 실행된 경우에만 실행됩니다. 따라서 종료 코드를 사용하는 대신 내장 기능을 사용할 수 있습니다 &&
.
답변2
0 0 * * 5 /var/scripts/PLW.pl
Perl 프로그램 system("/bin/sh","/path/run_once.sh");
이전 에 지저분한 crontab과 함께 'run_once.sh'를 실행하는 것은 좋지 않습니다 exit($EXIT_SUCCESS);
. 대신 Perl 프로그램에 주석을 달아주세요.
편집: 아니면 그냥 exec()
Perl을 사용하세요.