Cron 구문 설명

Cron 구문 설명
Photo by RODOLFO BARRETTO / Unsplash

Cron 표현식은 5개의 필드로 구성되며, 각 필드는 공백으로 구분됩니다.

┌───────────── 분 (0 - 59)
│ ┌───────────── 시 (0 - 23) <-- UTC 기준!
│ │ ┌───────────── 일 (1 - 31)
│ │ │ ┌───────────── 월 (1 - 12)
│ │ │ │ ┌───────────── 요일 (0 - 6) (0:일요일, 1:월요일, ..., 6:토요일)
│ │ │ │ │
│ │ │ │ │
* * * * *
  • *: 모든 값 (매 분, 매 시, 매 일 등)
  • */n: n 간격마다 (예: */15는 15분 간격)
  • 1-5: 범위 (예: 1-5는 월요일부터 금요일까지)
  • 1,3,5: 특정 값 목록

KST 변환 예시:

  • 매일 오전 9시 KST에 실행:
    • KST는 UTC+9 이므로, 오전 9시 KST는 UTC 기준으로 자정(00:00)입니다.
    • Cron: 0 0 * * *
  • 매주 월요일 오후 2시 KST에 실행:
    • 오후 2시 KST (14:00)는 UTC 기준으로 오전 5시 (05:00)입니다.
    • 월요일은 1입니다.
    • Cron: 0 5 * * 1
  • 매달 1일 새벽 1시 KST에 실행:
    • 새벽 1시 KST (01:00)는 UTC 기준으로 전날 오후 4시 (16:00)입니다. 주의: 날짜가 하루 전으로 넘어갑니다.
    • 하지만 Cron 표현식은 특정 날짜를 기준으로 하므로, 매달 1일 새벽에 실행하려면 UTC 기준으로 전날 저녁에 실행되도록 설정해야 합니다. 매달 1일 KST 01:00 = 매달 마지막 날 UTC 16:00. 이것은 Cron으로 표현하기 약간 까다로울 수 있습니다.
    • 더 쉬운 방법: 매달 1일 오전 9시 KST (UTC 00:00) 에 실행: 0 0 1 * *