핵심 요점
- 01일반 영어 설명으로 배포 전에 cron 작업이 정말 무엇을 할 것인지 확인하기 쉽습니다.
- 02다음 5개 UTC 실행 시간은 표준 시간대 안전 검증을 위해 ISO-8601 형식으로 나열됩니다.
- 03표준 Vixie-cron 규칙에 따라 범위(1-5), 목록(1,3,5), 단계(*/15)를 지원합니다.
- 04모든 것이 브라우저에서 실행됩니다. 백엔드, 계정, 네트워크 요청이 없습니다.
Cron 표현식이 잘못되기 쉬운 이유
Cron 구문은 의도적으로 간결하지만, 그 간결함이 놀랍게도 작업을 잘못된 시간에 예약하기 쉽습니다. 자정 백업이 UTC의 정오에 실행되거나, 단계 표현식이 예상 시간을 놓치거나, 요일 값이 하나 벗어나는 경우입니다. 이러한 버그는 작업이 조용히 실행되지 않을 때까지 포착하기 어렵습니다. 0 */6 * * 1-5를 큰 소리로 읽는 것은 하트를 외우지 않는 한 많이 알려주지 않습니다.
Handytool의 cron 빌더는 유효한 모든 표현식을 실제로 읽을 수 있는 문장으로 변환한 다음 다음 5개 시간을 UTC로 표시하여 이를 해결합니다. 월요일 아침 예약 작업이 실패하기 전에 실수를 포착합니다.
Cron 표현식을 만들고 검증하는 방법
- 01
사전 설정으로 시작하거나 직접 입력
매분, 시간별, 매일 자정, 월요일 매주 같은 사전 설정은 올바른 시작점을 제공합니다. 맞춤 일정의 경우 수동 입력으로 전환합니다.
- 02
5필드 입력
분 시간 월일 월 요일 순서로 표현식을 입력합니다. 빌더는 입력할 때 각 필드의 범위를 검증합니다.
- 03
일반 영어 설명 읽기
설명이 실시간으로 업데이트됩니다. 문장이 의도와 일치하는지 확인합니다. 예를 들어 '6시간 매 정각, 월요일부터 금요일'.
- 04
다음 5개 실행 시간 확인
예정된 화재 시간은 ISO-8601 UTC로 나열됩니다. 월말 경계나 표준 시간대 오프셋 같은 엣지 케이스를 검증하는 데 사용합니다.
Cron 구문 빠른 참조
모든 5필드는 이러한 규칙을 따릅니다:
- 01별표(*)는 필드의 모든 유효한 값을 의미합니다
- 02슬래시(*/N)는 N 증분 범위를 단계별로 실행합니다
- 03대시(A-B)는 A부터 B까지 포함하는 모든 값과 일치합니다
- 04쉼표(A,B,C)는 특정 값 목록과 일치합니다
- 05필드 범위: 분 0-59, 시 0-23, 일 1-31, 월 1-12, 요일 0-6(일요일=0)
설치 없음, 서버 없음
cron 빌더는 JavaScript를 사용하여 브라우저에서 완전히 표현식을 파싱하고 다음 실행 시간을 계산합니다. 아무것도 서버로 전송되지 않으므로, 가입이 없고, API 할당량이 없으며, 지연시간이 없습니다. 다음 실행 계산은 분 단위로 표준 Vixie-cron 규칙에 대한 매치를 시뮬레이션하며, 이는 대부분 프로덕션 스케줄러가 사용하는 접근 방식과 같습니다.
6필드 표현식(앞의 초 필드 포함) 및 @daily 또는 @weekly 같은 특수 문자열은 지원되지 않습니다. cron 자체, Kubernetes, GitHub Actions를 포함한 대부분 프로덕션 환경은 표준 5필드 양식을 사용하므로, 빌더는 그에 초점을 맞춥니다.
Cron 표현식 빌더 FAQ
이 빌더는 어느 cron 방언을 지원하나요?
표준 5필드 Vixie-cron: 분, 시, 월일, 월, 요일. @daily/@weekly 단축키 및 6필드 초 구문은 지원되지 않습니다. 대부분 프로덕션 스케줄러가 5필드 양식을 사용합니다.
다음 실행 시간이 UTC로 표시되는 이유는 무엇인가요?
대부분 CI/CD 시스템과 클라우드 스케줄러가 cron 표현식을 UTC로 해석합니다. UTC를 표시하면 미리보기가 휴대 가능하고 오해의 소지가 있는 로컬 시간 표시를 피합니다.
분 필드의 */15와 0,15,30,45의 차이점은 무엇인가요?
둘 다 15분마다 화재합니다. */15는 0에서 시작하여 15로 단계를 밟으므로 0,15,30,45와 동등합니다. 시간 필드에 대해 */6은 0,6,12,18을 의미합니다.
월말에 작업을 예약할 수 있나요?
표준 cron에는 '마지막 날' 토큰이 없습니다. 월일 필드에서 28-31로 근접할 수 있지만, 31일 미만의 월을 깨끗하게 처리하려면 작업 스크립트 내에서 날짜를 확인하세요.
주중 오전 9시에 작업을 실행하는 방법이 있나요?
네, 있습니다. 0 9 * * 1-5는 월요일부터 금요일 오전 9시 UTC에 화재합니다. 배포 전에 빌더의 일반 영어 출력과 다음 실행 목록에서 검증합니다.