Cron Expression Explainer
크론 표현식 자연어 해석 및 다음 실행 시간 표시
사람이 읽을 수 있는 형식
실행, 15 분마다, 시 9부터 17 까지, 요일 1부터 5 까지
다음 5회 실행
- 2/25/2026, 12:30:33 PM
- 2/25/2026, 12:45:33 PM
- 2/25/2026, 1:00:33 PM
- 2/25/2026, 1:15:33 PM
- 2/25/2026, 1:30:33 PM
빠른 참조
Cron Expression Explainer 소개
Cron 표현식 해석기는 표준 5개 필드 cron 표현식을 파싱하여 사람이 읽을 수 있는 설명, 필드별 시각적 분석, 다음 5회 예약 실행 시각 목록으로 변환합니다. 5개 필드(분, 시, 월-일, 월, 요일)는 각각 전체 cron 문법을 지원합니다: 와일드카드(*), 스텝 값(*/15), 쉼표로 구분된 목록(1,3,5), 범위(9-17). 또한 @yearly, @monthly, @weekly, @daily, @hourly, "5분마다" 6가지 공통 프리셋을 클릭 가능한 버튼으로 제공합니다.
DevOps 엔지니어, 시스템 관리자, 백엔드 개발자, 플랫폼 팀은 데이터베이스 백업, 로그 순환, 보고서 생성, 캐시 준비, 배치 데이터 처리 등 자동화 작업에 cron 스케줄을 활용합니다. cron 표현식 오독은 흔한 버그의 원인입니다. 별표 하나를 빠뜨리거나 범위에서 1씩 오차가 생기면 하루에 한 번 실행되어야 할 작업이 매분 실행될 수 있습니다. 이 도구는 배포 전에 자연어로 표현식을 설명하여 그런 모호성을 없앱니다.
다음 실행 알고리즘은 현재 시각부터 1분 단위로 최대 525,600분(1년)까지 앞으로 반복하며, 파싱된 필드에 대해 Set 멤버십으로 각 후보 타임스탬프를 검사합니다. Unix cron의 월-일과 요일 처리 규칙도 올바르게 구현됩니다: 두 필드 모두 비와일드카드인 경우 OR 로직으로 동작하고, 하나만 지정된 경우 해당 필드만 일치하면 됩니다. 설명 엔진은 각 필드를 스텝, 범위, 목록, 월 이름, 요일 이름 조회를 포함한 자연어 구문으로 변환합니다.
주요 기능
- 표준 5개 필드 cron 문법 전체 지원: *, */n, 범위(a-b), 목록(a,b,c), 조합
- 자연어 설명 ("월요일부터 금요일까지 오전 9시에서 오후 5시 사이 15분마다 실행")
- 값과 위치 레이블을 보여주는 필드별 시각적 분석
- 현재 로컬 시각부터 계산된 다음 5회 실행 시각 로케일 형식 표시
- @yearly, @monthly, @weekly, @daily, @hourly, 5분마다 등 6가지 빠른 참조 프리셋
- 월-일과 요일 동시 지정 시 Unix cron OR 로직 정확 처리
- 한국어·영어 양방향 출력 — 레이블과 설명이 언어 설정에 따라 전환
- 100% 클라이언트 사이드 처리 — cron 표현식 데이터가 서버로 전송되지 않습니다
자주 묻는 질문
cron 표현식이란 무엇인가요?
cron 표현식은 Unix 계열 시스템에서 자동화 작업의 반복 스케줄을 정의하는 공백으로 구분된 5개 필드의 문자열입니다. 순서대로 분(0~59), 시(0~23), 월-일(1~31), 월(1~12), 요일(0~6, 0이 일요일)을 나타냅니다. 예를 들어 "0 2 * * *"는 "매일 오전 2시에 실행"을 의미합니다.
cron 필드에서 별표(*)는 무엇을 의미하나요?
별표(*)는 해당 필드의 "모든 유효한 값"을 의미하는 와일드카드입니다. 예를 들어 분 필드의 *는 "매분"(0~59), 월 필드의 *는 "매월"을 의미합니다. 와일드카드는 스텝 값과 결합할 수 있습니다: 분 필드의 */15는 "15분마다"를 의미합니다.
*/15나 1-5/2 같은 스텝 값은 무엇인가요?
스텝 값은 슬래시를 사용하여 빈도를 나타냅니다. 분 필드의 */15는 "0, 15, 30, 45분에 실행"을 의미합니다. 1-5/2처럼 범위와 스텝을 결합하면 "1에서 5까지 2 단계마다" — 즉 1, 3, 5를 의미합니다. 이는 제한된 범위 내에서 정기적인 간격으로 작업을 예약할 때 유용합니다.
cron에서 월-일과 요일을 함께 사용하면 어떻게 되나요?
월-일과 요일 필드 모두 비와일드카드인 경우, 표준 Unix cron은 OR 로직을 사용합니다: 월-일이 일치하거나 요일이 일치하면 실행됩니다. 하나만 지정된 경우(다른 하나가 *)에는 해당 필드만 일치하면 됩니다. 이 동작은 의외일 수 있으며 잘못된 설정의 흔한 원인입니다.
"*/15 9-17 * * 1-5"는 무슨 의미인가요?
이 표현식은 15분마다(0, 15, 30, 45분), 9시에서 17시(오전 9시~오후 5시) 사이에만, 매달, 매일이지만 월요일에서 금요일(요일 1~5)에만 실행됩니다. 자연어로는 "평일 업무 시간 동안 15분마다 실행"을 의미합니다.
표시되는 다음 실행 시각은 얼마나 정확한가요?
도구는 현재 로컬 시각부터 1분 단위로 앞으로 반복하며 각 분을 파싱된 cron 필드에 대해 검사하여 다음 실행 시각을 계산합니다. 결과는 시스템 시계만큼 정확하며 월 이름과 요일 이름을 포함한 모든 표준 cron 필드 규칙을 올바르게 준수합니다. 시간은 브라우저의 로케일 형식으로 표시됩니다.
@daily와 "0 0 * * *"의 차이는 무엇인가요?
@daily(또는 @midnight)는 "0 0 * * *"의 축약형으로 매일 자정(00:00)에 한 번 실행합니다. 기타 축약형: @hourly = "0 * * * *", @weekly = "0 0 * * 0"(일요일 자정), @monthly = "0 0 1 * *"(매월 1일 자정), @yearly = "0 0 1 1 *"(1월 1일 자정). 이 도구의 빠른 참조 버튼을 클릭하면 해당 표현식이 자동으로 입력됩니다.
배포 전에 cron 표현식을 검증하는 데 사용할 수 있나요?
네 — 이것이 주요 사용 사례 중 하나입니다. cron 표현식을 입력 필드에 붙여넣고 자연어 설명과 다음 실행 시각이 의도와 일치하는지 확인하세요. 하루에 한 번 실행되어야 할 작업의 설명이 "매분 실행"이라고 표시된다면, 프로덕션에서 실행되기 전에 오류를 발견하고 수정할 수 있습니다.