Cron 표현식 해석

cron 표현식을 필드별로 풀어 설명하고 다음 실행 시각을 보여 줍니다 (Unix·Spring·Quartz).

불러오는 중…

사용법

  1. 입력칸에 cron 표현식을 입력하거나 예시 중 하나를 누릅니다.
  2. 필드 개수로 형식을 판단해 표 위에 Unix crontab (5필드), Spring (초 포함 6필드), Quartz 중 하나로 표시합니다. @daily 같은 매크로도 쓸 수 있습니다.
  3. 표에서 필드마다 값과 뜻을 확인합니다. 표현식이 잘못되었으면 어느 필드의 어떤 값이 문제인지 오류 메시지로 알려 줍니다.
  4. 다음 실행 시각을 확인합니다. 지금부터 최대 10개를 브라우저 시간대 기준으로 계산하며, 시간대는 제목에 표시됩니다.
  5. 복사 버튼으로 실행 시각 목록 전체를 복사합니다.

자주 묻는 질문

입력한 표현식이 서버로 전송되나요?
아니요. 브라우저 안에서 해석하고 계산합니다.
어떤 형식을 지원하나요?
Unix crontab 5필드(분·시·일·월·요일), Spring 6필드(맨 앞에 초), Quartz 6~7필드(맨 앞에 초, 끝에 선택 항목인 연도 1970~2099)를 지원합니다. 6필드라도 일이나 요일 필드에 ? 가 있으면 Quartz 로 봅니다. 매크로는 @yearly·@annually·@monthly·@weekly·@daily·@midnight·@hourly 를 쓸 수 있고, @reboot 은 일정이 없어 계산하지 않습니다.
Unix·Spring·Quartz cron 은 무엇이 다른가요?
Spring 과 Quartz 는 맨 앞에 초 필드가 더 있습니다. 요일은 Unix·Spring 에서 0~7(0과 7 모두 일요일), Quartz 에서 1~7(1=일요일, 7=토요일)입니다. L·W·#(말일, 가장 가까운 평일, n번째 요일)은 Spring·Quartz 에서만 쓸 수 있고, MON·JAN 같은 이름은 세 형식 모두에서 쓸 수 있습니다.
일과 요일을 둘 다 지정하면 어떻게 되나요?
Unix cron 은 둘 중 하나만 맞아도 실행하므로 0 0 1 * 1 은 매월 1일과 매주 월요일에 실행됩니다. Spring 은 둘 다 맞아야 하고, Quartz 는 둘 중 정확히 하나를 ? 로 써야 합니다.
다음 실행 시각은 어느 시간대 기준인가요?
브라우저 시간대(제목에 표시)의 현재 시각부터 계산합니다. 서버가 UTC 등 다른 시간대로 cron 을 돌리면 실제 실행 시각은 달라집니다. 서머타임 전환으로 존재하지 않는 시각은 건너뛰며, 앞으로 30년 안에서 찾습니다.