cron 표현식 해석기
cron 표현식을 필드별로, 그리고 쉬운 한 문장으로 풀어 읽고 다음 실행 시각을 확인합니다.
| 필드 | 값 | 의미 | 허용 값 |
|---|---|---|---|
| 분 | | 0–59 | |
| 시 | | 0–23 | |
| 일 | | 1–31 | |
| 월 | | 1–12, JAN–DEC | |
| 요일 | | 0–7, SUN–SAT |
| 회차 | 지금부터 |
|---|
도구를 여기에 고정하세요. 이 브라우저에 저장됩니다.
도구를 고정하면 그 스티커가 여기에 붙습니다.
cron 표현식을 필드별로, 그리고 쉬운 한 문장으로 풀어 읽고 다음 실행 시각을 확인합니다.
| 필드 | 값 | 의미 | 허용 값 |
|---|---|---|---|
| 분 | | 0–59 | |
| 시 | | 0–23 | |
| 일 | | 1–31 | |
| 월 | | 1–12, JAN–DEC | |
| 요일 | | 0–7, SUN–SAT |
| 회차 | 지금부터 |
|---|
cron 표현식은 공백으로 구분된 다섯 개의 필드, 즉 분(0–59), 시(0–23), 일(1–31), 월(1–12), 요일(0–7, 0과 7은 모두 일요일)로 이루어집니다. cron은 1분에 한 번 시계를 확인하고, 분, 시, 월, 일이 모두 일치하면 작업을 실행합니다. 날짜가 일치하는지는 일과 요일 두 필드를 함께 보고 아래에 설명한 규칙으로 판단합니다.
각 필드에서 *는 모든 값에 일치하고, 1,15 같은 목록은 그 안의 각 값에, 1-5 같은 범위는 첫 값부터 마지막 값까지 모두에 일치하며, */15나 8-18/2 같은 스텝은 범위에서 N번째 값마다 하나씩 취합니다. 월과 요일은 JAN~DEC, SUN~SAT처럼 세 글자 영어 이름으로도 쓸 수 있습니다.
매크로는 축약형입니다. @hourly는 0 * * * *, @daily와 @midnight는 0 0 * * *, @weekly는 0 0 * * 0, @monthly는 0 0 1 * *, @yearly와 @annually는 0 0 1 1 *와 같습니다.
일과 요일 필드는 서로 범위를 좁히지 않습니다. 둘 다 지정되어 있으면 둘 중 하나라도 일치하는 날에 작업이 실행됩니다. 따라서 0 0 13 * 5는 13일의 금요일에만 실행되는 것이 아니라, 매월 13일 자정과 매주 금요일 자정에 실행됩니다.
Vixie cron과 cronie는 일이나 요일 필드가 지정되었는지를 첫 글자로 판단합니다. */2 같은 스텝을 포함해 *로 시작하는 필드는 지정되지 않은 것으로 보며, 이때는 두 필드가 모두 일치해야 합니다. 0 0 */2 * 1은 홀수 날짜에 해당하는 월요일에 실행됩니다. 이 도구도 같은 규칙을 따르며, 두 경우 중 어느 쪽이 적용되는지 알려 줍니다.
스텝은 범위의 시작부터 세고, 범위가 끝나면 처음부터 다시 셉니다. 분 필드의 */15는 0, 15, 30, 45가 되므로 실제로 15분마다입니다. */7은 0, 7, 14, …, 56까지 간 다음, 4분 뒤에 다시 0이 됩니다. 이를 확인할 수 있도록 표에는 스텝이 펼쳐지는 값이 나열됩니다.
cron은 표현식을 실행 중인 머신의 시계와 비교하며, 많은 서버가 그 시계를 UTC로 둡니다. 다음 실행 목록 위에서 로컬 시간 또는 UTC를 골라 머신에 맞추고, 다른 열에서 같은 시점을 다른 시간대로 확인하세요. 서머타임으로 로컬 시계가 바뀔 때, 건너뛰거나 반복되는 한 시간 동안에 설정된 작업을 어떻게 처리하는지는 cron 구현마다 다릅니다. 이 도구는 건너뛰는 시각에는 실행을 나열하지 않으며, 반복되는 시각은 분 필드나 시 필드가 *로 시작할 때만 두 번 나열합니다.
표준 5필드 문법만 읽습니다. 초 필드, 연도 필드, 그리고 ?, L, W, # 문자는 Quartz 같은 다른 스케줄러의 것이므로 오류로 표시합니다. 5/15처럼 단일 값 뒤에 스텝을 붙인 것도 마찬가지입니다. crontab 매뉴얼은 *나 범위 뒤의 스텝만 정의하므로 5-59/15로 쓰세요.
필드가 허용하는 가장 작은 값부터 세어 다섯 번째 값마다라는 뜻입니다. 분 필드에서는 0, 5, 10, …, 55분이므로 작업이 5분마다 실행됩니다. 시 필드에서는 0, 5, 10, 15, 20시입니다.
아니요. 일과 요일이 모두 지정되어 있으면 cron은 둘 중 하나만 일치해도 작업을 실행합니다. 이 표현식은 매월 13일과 매주 금요일에 실행됩니다.
둘 다입니다. 요일 필드는 0부터 7까지 받으며, 0과 7은 모두 일요일입니다. 월요일은 1, 토요일은 6입니다. SUN, MON 같은 이름으로 쓸 수도 있습니다.
스케줄러에서 작업별로 시간대를 지정할 수 있는 경우가 아니라면, cron은 실행 중인 시스템의 시계와 시간대를 사용합니다. 많은 서버와 호스팅 스케줄러가 UTC로 동작하므로, 로컬 시간이라고 가정하기 전에 확인하세요.
별도의 창에서 열리며 오프라인에서도 계속 작동합니다.
설치하려면 공유 버튼을 누른 다음 “홈 화면에 추가”를 선택하세요.