Cron 표현식 파서
📋 포맷/변환Cron 표현식을 한글 설명으로 풀어주고, 다음 5회 실행 예정 시간도 함께 보여 줍니다.
⏰ Cron 표현식, 머리 아프지 않게 풀어보기
Cron 표현식을 한국어로 풀이하고 다음 실행 시각 5개를 미리 보여줍니다. 0 9 * * 1-5 같은 별표투성이 문자열을 매번 검색할 필요가 없습니다.AWS EventBridge, GitHub Actions schedule, Kubernetes CronJob, Spring @Scheduled, crontab까지 거의 모든 표기를 분 단위로 해석합니다. 입력은 브라우저 안에서만 처리되므로 운영 스크립트 검증에도 안전합니다.
📋 5개 필드 한눈에 보기
| 필드 | 범위 | 특수문자 | 예시 |
|---|---|---|---|
| 분 | 0-59 | * , - / | 0, 30, */5 |
| 시 | 0-23 | * , - / | 9, 0-8, */2 |
| 일 | 1-31 | * , - / | 1, 15, 1-7 |
| 월 | 1-12 | * , - / | 1, 6-8, */3 |
| 요일 | 0-6 | * , - / | 0(일), 1-5 |
💡 자주 쓰는 패턴
⚠️ 자주 빠지는 함정
- 요일과 일을 둘 다 지정: 표준 cron에서는 OR 조건이 됩니다. 매월 15일 + 매주 금요일을 동시에 쓰면 둘 중 하나라도 맞으면 실행되어 의도와 다르게 동작할 수 있어요.
- 2월 30일 같은 존재하지 않는 날짜: 0 0 30 2 *처럼 쓰면 절대 실행되지 않습니다. 마지막 날을 원하면 L 확장 문법(Quartz 등)을 지원하는 환경인지 먼저 확인하세요.
- 매주 일요일은 0과 7 둘 다 가능: 시스템에 따라 다르므로 안전하게 0을 쓰세요.
⚠️ 타임존 체크리스트
cron은 시스템 타임존을 따릅니다. UTC 서버에서 KST 오전 9시에 돌리려면 0 0 * * *로 적어야 합니다. AWS EventBridge·GitHub Actions는 UTC 고정이니 환경별로 한 번 더 점검하세요.
자주 묻는 질문
Cron과 Crontab의 차이가 정확히 뭔가요?▼
Cron은 백그라운드에서 돌아가는 스케줄링 데몬이고, Crontab은 사용자가 어떤 명령을 언제 실행할지 적어두는 설정 파일입니다. 터미널에서 crontab -e로 편집, crontab -l로 확인할 수 있고, 각 사용자별로 별도의 crontab을 가집니다.
초 단위로 더 자주 돌리려면 어떻게 해야 하나요?▼
표준 cron은 분 단위가 최소 단위입니다. 1초 간격이 필요하면 Spring @Scheduled, Quartz, node-cron(6필드 모드), Kubernetes의 별도 워크어라운드 같은 확장 구현을 써야 하고, 이때는 표현식 앞에 초 필드가 하나 더 붙어 6칸이 됩니다.
서버 시간대가 UTC인데 9시 KST에 돌리고 싶어요▼
cron 자체는 시스템 타임존을 따라가므로 UTC 서버라면 KST 9시 = UTC 0시, 즉 0 0 * * *로 적어야 합니다. AWS EventBridge처럼 명시적으로 cron(0 0 * * ? *) 형태와 UTC가 고정인 서비스도 있어 환경별로 한 번씩 점검이 필요합니다.
이 도구가 보여주는 다음 실행 시간은 어디 기준인가요?▼
브라우저가 인식한 사용자의 로컬 타임존입니다. 한국에서 접속하면 KST 기준으로 계산되니, UTC 서버에 배포할 cron을 작성한다면 시간대 차이를 한 번 더 점검하세요.