cron 작업에서 구문을 확인하는 방법

cron 작업에서 구문을 확인하는 방법

새로운 크론 작업을 생성 중입니다 /etc/cron.d.

이 크론 작업에는 약 56줄이 있으며 모든 명령은 매월 초에 실행되어야 합니다.

cron 작업 구문 유효성 검사에 대한 조언을 찾고 있습니다.

cron 작업 파일이 올바르게 구성되었고 오류가 없는지 어떻게 확인할 수 있습니까? 이를 확인할 수 있는 명령이 있습니까?

답변1

이것은 다음을 확인하는 awk로 작성된 유효성 검사기의 시작입니다.

  • 주석이 아닌 줄의 경우
  • crontab 항목처럼 보이도록 충분한 필드가 있는 행의 경우
  • 여기서 $3의 월 값은 1 또는 *가 아닙니다.
  • 월 값이 아닌 경우*

...그런 다음 (문제가 있는) 줄을 인쇄합니다.

샘플 입력:

53 23 * * * root /usr/lib64/sa/sa2 -A
53 23 1 * * root /usr/lib64/sa/sa2 -A
53 23 2 * * root /usr/lib64/sa/sa2 -A

출력은 다음과 같습니다

53 23 2 * * root /usr/lib64/sa/sa2 -A

@monthlycron 구문이 허용하는 대로 월 이름과 범위(짝수)를 처리하도록 향상되어야 합니다.

awk '!/^#/ && NF >= 7 && ($3 != 1 && $3 != "*") && $4 != "*" 1'

관련 정보