crontab의 공백이 중요합니까?

crontab의 공백이 중요합니까?

crontab 맨페이지에서는 명확하지 않습니다. 필드 사이에 추가 공백이 허용됩니까? 예를 들어, 다음이 있는 경우:

1 7 * * * /scripts/foo
5 17 * * 6 /script/bar
31 6 * * 0 /scripts/bofh

다음과 같이 다시 포맷해도 안전합니까?

 1  7 * * * /scripts/foo
 5 17 * * 6 /script/bar
31  6 * * 0 /scripts/bofh

?

답변1

예, 추가 공간이 허용되며 가독성을 위해 필드를 보기 좋게 배열할 수 있습니다. ~에서man 5 crontab

Blank lines and leading spaces and  tabs  are  ignored.

그리고

An environment setting is of the form,

   name = value

where the spaces around the equal-sign (=) are optional, and any  sub‐
sequent non-leading spaces in value will be part of the value assigned
to name.

필드 자체에 대해 매뉴얼 페이지에는 다음과 같이 나와 있습니다.

The fields may be separated  by  spaces or tabs.

이는 분명해야 합니다. 여러 개의 공백이 허용됩니다.

답변2

추가 공백이 허용됩니다. 고려하다:

#Mins  Hours  Days   Months  Day of the week
10     3      1      1       *       /bin/echo "I don't really like cron"
30     16     *      1,2     *       /bin/echo "I like cron a little"
*      *      *      1-12/2  *       /bin/echo "I really like cron"

나는 모든 숫자의 순서를 기억하기에는 너무 게으르기 때문에 항상 열 머리글을 추가하지만 crontab이 생성하는 내용은 다음과 같습니다.

이 crontab은 격월로(짝수 달마다) "I really like cron"을 에코해야 합니다. 분명히, cron을 정말 좋아하는 경우에만 이 작업을 수행할 것입니다. crontab은 또한 1월과 2월 매일 16시 30분에 "I kind of cron"을 에코합니다. 1월 1일 3시 10분에는 "저는 크론을 별로 좋아하지 않습니다"라는 응답도 받았습니다.

관련 정보