작업이 실행되기 전에 크론 스케줄을 이해하세요
크론 표현식은 서버, CI 작업, 자동화 플랫폼 및 유지관리 스크립트에서 사용하는 간결한 예약 문자열입니다. 강력하지만 작은 오타로 인해 작업이 일일에서 매분으로, 또는 평일에서 주말로 변경될 수 있습니다.
이 파서는 Unix 5-필드 크론 표현식을 평이한 언어로 설명하고 각 필드를 분해하여 도구에서 선택한 타임존을 사용해 다가오는 실행 시간을 미리 보여줍니다.
지원되는 크론 방언
v1 파서는 다섯 개 필드를 사용하는 표준 Unix 크론을 지원합니다:
minute hour day-of-month month day-of-week - 분 값은
0to59. - 시 값은
0to23. - 월 일 값은
1to31. - 월 값은
1to12, 예:JANandDEC. - 요일 값은
0to7, 예:MONandFRI. 둘 다0and7는 일요일을 의미합니다.
와일드카드, 쉼표 목록, 범위 및 */15 또는 9-17/2 같은 스텝 값을 지원합니다. */15 or 9-17/2.
의도적으로 지원하지 않는 항목
크론 방언은 통일되어 있지 않습니다. Quartz, systemd timers, cloud schedulers, Kubernetes, GitHub Actions 및 호스팅 플랫폼은 자체 필드나 특수 연산자를 추가할 수 있습니다.
- 초 필드와 연도 필드는 Unix 크론으로 파싱되지 않습니다.
- Quartz 연산자 예:
?,L,W, 및#은(는) 지원되지 않는 것으로 보고됩니다. - 매크로 예:
@dailyand@reboot확장되지 않습니다. - 일정 뒤의 명령 텍스트는 표현식의 일부로 처리되지 않습니다.
이 페이지를 Unix 스타일 일정의 검사기로 사용하세요. 운영 환경의 자동화를 변경하기 전에 실제 작업을 실행할 스케줄러를 확인하세요.
타임존 및 서머타임 동작
크론 표현식 자체에는 타임존이 포함되어 있지 않습니다. 동일한 표현식이라도 서버가 UTC를 사용하는지, 로컬 시스템 타임존을 사용하는지, 또는 스케줄러별 타임존 설정을 사용하는지에 따라 다른 순간에 실행될 수 있습니다.
- 미리보기는 선택한 IANA 타임존과 UTC로 실행 시간을 표시합니다.
- 봄 전환(시계 앞당김) 시 존재하지 않는 지역 시계 시간이 건너뛸 수 있습니다.
- 가을 표준시 전환 시 동일한 지역 시계 시간이 반복될 수 있으며, 스케줄러 동작은 다를 수 있습니다.
- 월 일과 요일이 둘 다 제한된 경우, Unix 크론은 일반적으로 OR(또는) 의미론을 사용합니다.
중요한 작업의 경우 미리보기를 계획 도구로 사용하고 스케줄러 자체에서 동작을 확인하세요.
자주 묻는 질문
이것은 Quartz 크론을 지원하나요?
아니요. 이 파서는 Unix 5-필드 크론만 지원합니다. Quartz 스타일의 초 필드, 연도 필드 및 ?, L, W, # 같은 연산자는 지원되지 않는 것으로 표시됩니다. ?, L, W, 및 # 은(는) 지원되지 않는 것으로 표시됩니다.
크론 표현식은 어떤 타임존을 사용하나요?
크론 표현식은 타임존 정보를 포함하지 않습니다. 미리보기는 도구에서 선택한 타임존을 사용하지만 서버나 스케줄러는 다른 타임존을 사용할 수 있습니다.
왜 월 일과 요일이 둘 다 일치할 수 있나요?
일반적인 Unix 크론 동작에서는 두 필드가 제한된 경우 둘 중 하나의 필드가 일치하면 날짜가 일치할 수 있습니다. 예를 들어, 0 0 1 * MON 해당 작업은 월의 첫날과 월요일에 실행될 수 있습니다.
crontab에서 명령 부분을 붙여넣을 수 있나요?
일정의 다섯 필드만 붙여넣으세요. 이 도구는 일정 파서이며 전체 crontab 파서는 아니므로 일정 뒤의 명령 텍스트는 해석되지 않습니다.