Cron 표현식 파서
Cron 스케줄을 쉬운 말로 설명하고 다음 실행 시각 표시
로컬 실행
loading…
이 도구에 대해
다섯 필드 cron 표현식을 붙여넣으면 알기 쉬운 말로 풀어 설명하고, 필드별 분해와 함께, 진짜 실수를 잡아 주는 부분인 로컬 시간대 기준의 다음 다섯 번 실제 실행 시각을 계산해 줍니다. "0 3 * * 1"은 "03:00, 월요일에"로 읽히고, 그 뒤에 실제로 실행될 구체적인 날짜들이 이어집니다.
파서는 완전한 표준 문법을 지원합니다. 목록(1,15), 범위(9-17), 스텝(*/15), 월과 요일 이름(jan, mon), 일요일을 뜻하는 7, 그리고 @daily/@hourly 매크로 계열까지. 모두가 잊어버리는 규칙도 구현되어 있습니다. 일(day-of-month)과 요일(day-of-week)이 둘 다 제한되면, 잡은 둘 다가 아니라 어느 한쪽이라도 일치할 때 실행됩니다.
6필드(Quartz, 초 포함) 표현식은 조용히 오해석되는 대신 감지되어 명확히 안내됩니다. Java 스케줄러와 Unix crontab 사이를 오갈 때 생기는 "내 cron이 이상해요" 혼란의 가장 흔한 원인이죠.
자주 묻는 질문
- 다섯 필드는 순서대로 무엇인가요?
- 분(0–59), 시(0–23), 일(1–31), 월(1–12), 요일(0–6, 일요일 = 0, 7도 일요일로 허용). 순서를 기억하는 것은 영원한 숙제입니다. 분해 패널이 여러분 표현식의 각 필드에 라벨을 붙여 줍니다.
- 왜 "0 0 1 * 1"이 예상보다 자주 실행되나요?
- 일(1일)과 요일(월요일)이 둘 다 제한되면 cron은 어느 한쪽이라도 일치할 때 잡을 실행하기 때문입니다. 매월 1일마다, 그리고 매주 월요일마다요. "1일이면서 월요일일 때만"을 표현하려면 스크립트 쪽에서 날짜를 확인해야 합니다.
- 다음 실행 시각은 어느 시간대를 쓰나요?
- 브라우저의 로컬 시간대이며, 결과 옆에 표시됩니다. 실제 crontab은 서버의 시간대(또는 일부 cron의 TZ= 줄)로 실행됩니다. 특히 서머타임 전환 시기에는 대상 머신이 어떤 시간대를 쓰는지 반드시 확인하세요.
- 초나 연도를 지원하나요?
- 아니요. 그것은 6 또는 7필드를 쓰는 Quartz(Java) 확장입니다. 표준 Unix cron은 정확히 다섯 필드에 1분 해상도입니다. 6필드 입력은 오독되는 대신 감지되어 Quartz로 보고됩니다.