cron 표현식을 작성하는 방법

· 4 분 소요

cron 표현식은 Linux, 클라우드 플랫폼, CI/CD 파이프라인 및 작업 스케줄러에서 반복 일정을 정의하는 표준 방법입니다. 구문은 컴팩트하지만 직관적이지 않습니다 — 시각적 생성기는 작업이 정확히 언제 실행될지 보여줍니다.

cron 구문

cron 표현식에는 5개의 필드가 있습니다:

┌───────────── 분 (0-59)
│ ┌───────────── 시 (0-23)
│ │ ┌───────────── 일 (1-31)
│ │ │ ┌───────────── 월 (1-12)
│ │ │ │ ┌───────────── 요일 (0-6, 일요일=0)
│ │ │ │ │
* * * * *

일반적인 cron 일정

일정 표현식 의미
매분 * * * * * 60초마다 실행
5분마다 */5 * * * * :00, :05, :10, :15...에
매시간 0 * * * * 매시간 시작 시
매일 자정 0 0 * * * 00:00에 하루에 한 번
매일 오전 9시 0 9 * * * 09:00에 하루에 한 번
매주 월요일 오전 8시 0 8 * * 1 월요일 매주
매월 1일 0 0 1 * * 1일 자정 매월
평일 오후 6시 0 18 * * 1-5 월요일에서 금요일까지

cron 표현식을 작성하는 방법

  1. 일정 정의 — 분, 시, 일, 월 및 요일 값을 선택하기 위해 시각적 컨트롤을 사용하세요. 또는 « 매시간 » 또는 « 매일 자정 »과 같은 프리셋에서 시작하세요.
  2. 실행 미리보기 — 생성기가 일정이 올바른지 확인하기 위해 다음 5회 실행을 표시합니다.
  3. 표현식 복사 — crontab, CI/CD 구성 또는 클라우드 스케줄러에 붙여넣으세요.

특수 문자

문자 의미 예제
* 모든 값 * * * * * = 매분
*/n n마다 */15 * * * * = 15분마다
, 여러 값 0 8,12,18 * * * = 오전 8시, 정오, 오후 6시
- 범위 0 9-17 * * * = 9시에서 17시까지 매시간

자주 묻는 질문

cron 표현식의 형식은 무엇입니까?

표준 cron 표현식에는 분(0-59), 시(0-23), 일(1-31), 월(1-12) 및 요일(0-6, 0은 일요일)을 나타내는 공백으로 구분된 5개의 필드가 있습니다. 별표(*)는 해당 필드의 « 모든 » 값을 의미합니다.

cron에서 */5는 무엇을 의미합니까?

*/5 구문은 « 5마다 »를 의미합니다. 분 필드에서 */5는 5분마다(0, 5, 10, 15...)를 의미합니다. 시 필드에서 */5는 5시간마다를 의미합니다. 어떤 필드에서도 작동합니다.

cron 표현식이 모든 플랫폼에서 동일합니까?

5필드 형식은 Linux cron, AWS EventBridge, GitHub Actions 및 대부분의 일정 관리 시스템에서 표준입니다. 일부 플랫폼은 초나 연도에 대한 6번째 필드를 추가합니다. 플랫폼 문서를 확인하세요.

매월 마지막 날에 일정을 잡는 방법은?

표준 cron에는 « 마지막 날 » 키워드가 없습니다. 스크립트에 날짜 확인이 있는 매일 실행과 같은 우회를 사용하거나 플랫폼별 확장(AWS EventBridge는 « last »에 대해 L을 지원함)을 사용하세요.