Cron 표현식은 Unix/Linux 시스템에서 주기적인 작업을 정의하는 데 사용됩니다. Cron 표현식은 각기 다른 시간 단위를 나타내는 다섯 개 또는 여섯 개의 필드로 구성됩니다.
README.md
* * * * * *
- - - - - -
| | | | | |
| | | | | +---- 요일 (0 - 7) (0 또는 7은 일요일을 나타냅니다)
| | | | +------ 월 (1 - 12)
| | | +-------- 일 (1 - 31)
| | +---------- 시 (0 - 23)
| +------------ 분 (0 - 59)
+-------------- 초 (0 - 59)
필드 설명
- 초 (0 - 59): 매 분의 몇 초에 작업을 실행할지 지정합니다.
- 분 (0 - 59): 매 시의 몇 분에 작업을 실행할지 지정합니다.
- 시 (0 - 23): 매일의 몇 시에 작업을 실행할지 지정합니다.
- 일 (1 - 31): 매월의 몇 일에 작업을 실행할지 지정합니다.
- 월 (1 - 12): 매년의 몇 월에 작업을 실행할지 지정합니다.
- 요일 (0 - 7): 매주의 몇 요일에 작업을 실행할지 지정합니다 (0 또는 7은 일요일을 나타냅니다).
특수 문자
- *: 가능한 모든 값을 나타냅니다. 예를 들어, 분 필드에서 *를 사용하면 매 분마다 실행됩니다.
- ,: 값 목록을 나타냅니다. 예를 들어, 시 필드에서 1,2,3을 사용하면 1시, 2시, 3시에 실행됩니다.
- -: 값 범위를 나타냅니다. 예를 들어, 일 필드에서 1-5를 사용하면 1일부터 5일까지 실행됩니다.
- /: 스텝 값을 나타냅니다. 예를 들어, 분 필드에서 */5를 사용하면 5분마다 실행됩니다.
- ?: 일 필드와 요일 필드에서만 사용할 수 있으며, 특정 값을 지정하지 않음을 의미합니다.
- L: 일 필드와 요일 필드에서만 사용할 수 있으며, 마지막 날을 의미합니다. 예를 들어, 일 필드에서 5L을 사용하면 매월의 마지막 날에 실행됩니다.
- W: 일 필드에서만 사용할 수 있으며, 가장 가까운 평일을 의미합니다. 예를 들어, 일 필드에서 5W를 사용하면 가장 가까운 5일 평일에 실행됩니다.
- #: 요일 필드에서만 사용할 수 있으며, 특정 요일의 몇 번째 occurrence를 의미합니다. 예를 들어, 요일 필드에서 6#3을 사용하면 매월의 세 번째 금요일에 실행됩니다.
- 요일: 요일 필드에서 약어 (SUN, MON, TUE, WED, THU, FRI, SAT)를 사용하여 요일을 지정합니다.
- 월: 월 필드에서 약어 (JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC)를 사용하여 월을 지정합니다.
특수 문자열
- @reboot: 시스템 시작 시 실행합니다.
- @yearly 또는 @annually: 매년 한 번 실행합니다. 0 0 1 1 *와 동일합니다.
- @monthly: 매월 한 번 실행합니다. 0 0 1 * *와 동일합니다.
- @weekly: 매주 한 번 실행합니다. 0 0 * * 0와 동일합니다.
- @daily 또는 @midnight: 매일 한 번 실행합니다. 0 0 * * *와 동일합니다.
- @hourly: 매시간 한 번 실행합니다. 0 * * * *와 동일합니다.