동작 방식
표현식을 필드로 나눈 뒤, 각 필드를 실제로 일치하는 값으로 펼쳐요. 다음 실행은 고른 시간대의 시계를 기준으로 하루씩 앞으로 훑으며 최대 8년 뒤까지 찾기 때문에 2월 29일 같은 드문 날짜도 나와요. 전통적인 Unix cron은 일과 요일을 둘 다 정하면 둘 중 하나만 맞아도 실행되고, Spring과 Quartz는 둘 다 맞아야 실행돼요.
*/15 9-17 * * MON-FRI → 15분마다, 9시부터 17시까지, 평일
필드 안내
- *: 모든 값. */15: 처음부터 15씩. 5/15: 5부터 15씩.
- 9-17: 9부터 17까지 범위. 1,15: 1일과 15일만.
- 이름: MON–SUN, JAN–DEC, 대소문자 구분 없어요. 단축 표기: @yearly, @monthly, @weekly, @daily, @hourly.
- L: 그달 마지막 날(L-3은 말일 3일 전). 15W: 15일에서 가장 가까운 평일. LW: 마지막 평일.
- FRI#2: 둘째 금요일. 5L: 마지막 금요일(Quartz 번호). ?: 값을 정하지 않음.
- 6·7필드: 맨 앞이 초예요. Quartz는 맨 뒤에 연도를 붙일 수 있고 요일을 1(일요일)~7(토요일)로 세요.
활용 팁
- “매주 월요일 9시”는 0 9 * * MON이에요. 일은 *로 두어 요일만 보게 해요.
- 0 0 29 2 *는 다음 윤일을 찾아줘요. 2월 29일이 없는 해는 자동으로 건너뛰어요.
- 모든 처리가 브라우저 안에서 이루어지고, 아무것도 업로드되지 않아요.
계산 기준과 출처
- cron 형식은 POSIX crontab 정의와 널리 쓰이는 Vixie/ISC cron 방식을 따름
최종 검토 2026년 10월 12일
자주 묻는 질문
다섯 필드는 각각 무슨 뜻인가요?
왼쪽부터 분(0–59), 시(0–23), 일(1–31), 월(1–12), 요일(0–6, 일요일이 처음)이에요. 0 9 * * MON은 매주 월요일 9시라는 뜻이에요.
일과 요일을 둘 다 정하면 어떻게 돼요?
둘 중 하나라도 맞으면 실행돼요. 예를 들어 0 9 1 * MON은 매월 1일과 매주 월요일에 실행돼요. 이 OR 규칙이 전통적인 cron 방식이에요.
0 0 29 2 *는 왜 어떤 해엔 건너뛰어요?
2월 29일은 윤년에만 있어서, 다른 해엔 맞는 날짜가 없어 다음 실행이 다음 윤일로 넘어가요.
실행 시각은 내 시간대로 나오나요?
네. 기본은 기기 시계를 기준으로 내 지역 시간으로 보여 줘요. 시간대를 바꾸면 UTC나 뉴욕 시간으로 도는 서버에서 언제 실행되는지도 볼 수 있어요.