Cron 표현식 생성기
0-59
0-23
1-31
1-12
0-7 (0,7=일)
Cron 문법은 간결한 만큼 실수하기 쉽습니다. 0 */6 * * *는 6시간마다 실행되지만, */6 0 * * *는 자정 직후 첫 1시간 동안에만 10번 실행됩니다. 이 생성기는 스케줄을 시각적으로 선택(15분마다, 평일 오전 9시, 매월 1일)하게 해주고, 정확한 표현식과 함께 그 의미를 알기 쉬운 말로 설명해 줍니다.
cron 표현식 만드는 방법
-
1
프리셋을 선택하거나 직접 입력
매분, 매시간, 매일 자정, 매주 일요일, 매월 1일은 클릭 한 번이면 됩니다. 그 외의 스케줄은 다섯 개 필드에 값을 직접 입력하세요.
-
2
스케줄 세분화
특정 분, 시, 일, 월, 요일. 범위(9-17), 목록(1,15), 스텝(*/6)을 모두 지원합니다.
-
3
표현식 읽기
생성기는 항상 표준 5필드 cron 형식을 출력하며, 일정을 알기 쉬운 말로 설명해 줍니다.
-
4
방언 확인
방언마다 규칙이 다릅니다(Quartz, AWS EventBridge, Kubernetes). 표현식이 스케줄러가 기대하는 형식과 맞는지 확인하세요.
다섯 개의 필드
* * * * *
│ │ │ │ │
│ │ │ │ └── 요일 (0-6, 일요일=0, 또는 SUN-SAT)
│ │ │ └───── 월 (1-12, 또는 JAN-DEC)
│ │ └──────── 일 (1-31)
│ └─────────── 시 (0-23)
└────────────── 분 (0-59)
각 필드는 다음을 허용합니다:
- 특정 숫자:
5 - 목록:
1,15,30 - 범위:
9-17 - 스텝:
*/10(10마다) 또는0-30/5(0부터 30까지 5마다) - 와일드카드:
*(모든 값)
자주 쓰는 표현식
| 스케줄 | Cron 표현식 |
|---|---|
| 매분 | * * * * * |
| 15분마다 | */15 * * * * |
| 매시 정각 | 0 * * * * |
| 6시간마다 | 0 */6 * * * |
| 매일 오전 2:30 | 30 2 * * * |
| 평일 오전 9시 | 0 9 * * 1-5 |
| 매주 월요일 오전 8시 | 0 8 * * 1 |
| 매월 1일 오전 3시 | 0 3 1 * * |
| 평일 9-17시 사이 15분마다 | */15 9-17 * * 1-5 |
| 1일과 15일 정오 | 0 12 1,15 * * |
| 매주 일요일 자정 | 0 0 * * 0 |
일(day-of-month) + 요일(day-of-week) 함정
표준 cron에서는 일과 요일을 둘 다 지정(*가 아님)하면, 둘 중 하나라도 맞을 때 작업이 실행됩니다(AND가 아니라 OR). 0 0 1 * MON은 매월 1일 그리고 매주 월요일에 실행되며, 1일이 월요일인 경우에만 실행되는 것이 아닙니다.
Vixie cron과 대부분의 리눅스 배포판은 이 OR 규칙을 따릅니다. Quartz(Java)와 일부는 AND를 씁니다. 확실하지 않으면 스케줄러에서 dry run이나 테스트 작업으로 표현식을 검증하세요.
방언 차이
- 표준 cron (Linux): 5필드, 요일 0-6 (일요일 = 0 또는 7).
- Quartz (Spring, Java 앱): 6-7필드, 첫 번째 필드가 초이고 연도는 선택. 요일 1-7 (일요일 = 1).
- AWS EventBridge cron: 6필드, 연도 포함. 요일과 일은 상호 배타적이어야 함(하나는
?여야 함). - GitHub Actions: 표준 5필드, 최소 간격 5분, UTC만.
- Kubernetes CronJob: 표준 5필드, 기본 UTC.
자신의 스케줄러가 어떤 방언을 쓰는지 항상 확인하세요.
타임존
전통적인 cron은 서버의 로컬 타임존으로 실행됩니다. DST 전환 무렵에 큰 문제가 됩니다: 오전 2:30 작업은 전환일에 두 번 실행되거나 아예 실행되지 않을 수 있습니다. 최신 스케줄러(systemd 타이머, Kubernetes, EventBridge)는 타임존을 명시적으로 지정할 수 있으니, 특별한 이유가 없다면 UTC를 사용하세요.
자주 묻는 질문
필드의 5단위마다, 0부터 시작입니다. 분 필드에서 */5는 0, 5, 10, 15, …, 55분에 실행됩니다. 0,5,10,15,20,25,30,35,40,45,50,55의 축약형입니다.
Cron은 60분이나 24시간으로 나누어 떨어지지 않는 임의 간격을 표현할 수 없습니다. 90분의 경우 특정 실행 시각을 나열하거나(0 0,9 * * *에 추가 줄을 조합), 임의 간격을 지원하는 스케줄러(systemd 타이머, anacron)로 전환하세요.
자정입니다. 필드 순서는 분-시이므로 0 0은 “0시 0분”을 뜻합니다. 정오는 0 12 * * *입니다.
표준 cron은 건너뜁니다, 놓친 실행은 재시도되지 않습니다. Anacron은 다음 부팅 시 놓친 일간/주간/월간 작업을 잡아냅니다. Kubernetes CronJob에는 놓친 윈도우를 명시적으로 처리하는 startingDeadlineSeconds와 concurrencyPolicy가 있습니다.
관련 도구
ASCII 표 참조
NUL, LF, DEL 같은 제어 문자를 포함해 모든 문자에 대한 10진수, 16진수, 8진수, 2진수, HTML 숫자 문자 참조를 담은 0부터 127까지의 전체 ASCII 표.
키보드 단축키 참고표
macOS, Windows, Linux에서 VS Code, Chrome, GNU Readline을 쓰는 Bash의 문서화된 기본 단축키를 검색합니다.
HTML 문자 참조
HTML 엔티티의 검색 가능한 목록, 각 엔티티의 이름 및 숫자 코드, 그리고 특수 문자 및 기호에 대한 1클릭 복사 기능을 제공합니다.
보색 찾기
어떤 입력에 대해서도 보색을 찾습니다. HSL 반대 색, 분할 보색 쌍, 그리고 접근성 있는 조합 제안을 반환합니다.
랜덤 영어 글자 생성기
A-Z 영어 글자를 무작위로 생성합니다. 개수와 대문자, 소문자, 혼합 대소문자를 선택해 게임, 과제, 수업 활동에 활용하세요.
랜덤 색상 팔레트 생성기
2~15개의 색상으로 랜덤 팔레트를 만들고, 비비드, 파스텔, muted, dark 스타일을 선택한 뒤 HEX 코드나 CSS 변수를 복사하세요.