빠른 패턴:
매분 매시 매일 자정 평일 오전 9시 매주 일요일 매월 1일 15분마다 매일 오전 2시 금요일 오후 6:30

Cron 표현식이란?

Cron 표현식은 자동화된 작업(Cron job)의 스케줄을 정의하는 공백으로 구분된 5개 필드의 문자열입니다. 원래 Unix/Linux에서 유래했으며, 현재는 클라우드 스케줄러(AWS EventBridge, GitHub Actions, Kubernetes CronJobs, Heroku Scheduler)와 애플리케이션 프레임워크에서 널리 사용됩니다.

5개 필드는 다음을 나타냅니다: (0-59), (0-23), (1-31), (1-12), 요일(0-7, 0과 7 모두 일요일).

Cron 구문 참조

각 필드는 다음 특수 문자를 지원합니다:

  • * — 모든 값(와일드카드). 예: * * * * *는 매분 실행.
  • , — 목록 구분자. 예: 시 필드의 1,3,5는 오전 1시, 3시, 5시를 의미.
  • - — 범위. 예: 요일 필드의 1-5는 월요일부터 금요일을 의미.
  • / — 스텝. 예: 분 필드의 */5는 5분마다를 의미.

이 도구 사용 방법

위 입력 필드에 Cron 표현식을 입력하거나 붙여넣으세요. 도구가 각 필드를 즉시 설명하고, 전체 스케줄을 사람이 읽을 수 있는 형태로 보여주며, 현재 날짜와 시간 기준 다음 5회 실행 시간을 표시합니다. 빠른 패턴 버튼을 사용하여 일반적인 표현식을 삽입하세요.

일반적인 Cron 표현식 예제

  • * * * * * — 매분
  • 0 * * * * — 매시 정각
  • 0 0 * * * — 매일 자정
  • 0 9 * * 1-5 — 평일 오전 9:00
  • 0 0 1 * * — 매월 1일 자정
  • */15 * * * * — 15분마다
  • 0 2 * * 0 — 매주 일요일 오전 2:00 (주간 백업에 자주 사용)
  • 0 8,12,17 * * 1-5 — 평일 하루 3회 (오전 8시, 정오, 오후 5시)

Cron에 대한 자주 묻는 질문

Cron에서 '* * * * *'는 무엇을 의미하나요?

표현식 * * * * *는 "매일 매시간 매분 실행"을 의미합니다. 각 별표는 해당 위치의 모든 유효한 값과 일치하는 와일드카드입니다: 분(0-59), 시(0-23), 일(1-31), 월(1-12), 요일(0-7). 이것은 가장 허용적인 Cron 표현식이며, 자주 실행해야 하는 작업에 일반적으로 사용됩니다.

Cron job을 5분마다 실행하려면 어떻게 하나요?

슬래시를 사용한 스텝 구문을 사용하세요: */5 * * * *. /는 "N마다"를 의미하므로 분 필드의 */5는 5분마다를 뜻합니다 — :00, :05, :10, :15 등. 15분마다는 */15 * * * *을 사용하세요. 매시 0분, 30분과 같이 특정 분에 실행하려면 0,30 * * * *(쉼표로 구분된 목록)을 사용하세요.

Cron에서 요일 0과 7의 차이는 무엇인가요?

0과 7 모두 일요일을 나타냅니다. 전통적인 Unix 규칙은 일요일에 0을, 토요일에 6을 사용하지만, 많은 Cron 구현에서 호환성을 위해 7도 일요일로 허용합니다. 1-5는 월요일부터 금요일, 6은 토요일입니다. 평일에만 스케줄링하려면 요일 위치에 1-5를 사용하세요: 0 9 * * 1-5는 월요일부터 금요일 오전 9시에 실행됩니다.

Cron은 초 단위 스케줄링을 지원하나요?

표준 Unix cron은 분 미만의 스케줄링을 지원하지 않습니다 — 최소 단위는 1분입니다. 초 단위 정밀도가 필요한 경우 systemd timers(Linux), 작업 스케줄러(Windows), 또는 초를 포함한 6필드 표현식을 지원하는 node-cron, APScheduler(Python), Quartz(Java)와 같은 애플리케이션 수준 스케줄러를 사용하세요.

관련 개발자 도구