MODOO HUB ← 모두의 툴
🌐 EN
Developer · Instrument

Cron 표현식
생성기

클릭만으로 cron 표현식을 생성하고 다음 실행 시간을 확인하세요

생성된 Cron 표현식
0 0 * * *
자주 쓰는 표현식
직접 만들기
직접 입력 & 검증
표현식을 직접 입력하면 자동으로 빌더에 반영됩니다
다음 실행 예정 시간
특수 문자 참고

Cron 표현식이란?

Cron은 Unix 계열 시스템에서 특정 시간에 자동으로 작업을 실행하는 스케줄러입니다. Cron 표현식은 "분 시 일 월 요일" 5개 필드로 구성되며, Spring @Scheduled, Jenkins, GitHub Actions, Linux crontab 등에서 사용합니다.

Spring @Scheduled cron과 표준 cron의 차이는?

Spring은 초(second) 필드가 추가되어 6개 필드를 사용합니다. 맨 앞에 초(0~59)를 추가해야 합니다. 예: "0 0 9 * * MON-FRI"

*/5 * * * * 는 무슨 의미인가요?

매 5분마다 실행을 의미합니다. */n은 n분(시간/일)마다 실행하는 간격 표현입니다. 예) */10은 10분마다, 시 필드의 */2는 2시간마다를 의미합니다.

평일 오전 9시에만 실행하려면?

0 9 * * 1-5 를 사용합니다. 1-5는 월요일(1)부터 금요일(5)까지를 의미합니다. 주말만 실행하려면 0 9 * * 0,6 을 사용합니다.

매월 말일에 실행하려면?

일 필드에 L을 사용합니다. 예: 0 0 L * * (매월 마지막 날 자정). L은 표준 Linux crontab에서는 지원되지 않고 Jenkins, Spring 등 일부 스케줄러에서만 지원합니다.

서버가 꺼져 있어 작업이 누락되면 어떻게 되나요?

표준 cron은 누락된 작업을 자동으로 재실행하지 않습니다. 서버가 복구되면 다음 예정 시간에만 실행됩니다. 누락된 작업 처리가 필요하면 Quartz Scheduler나 APScheduler 같은 라이브러리를 고려하세요.

크론 표현식에서 L(Last)과 W(Weekday)는 무엇인가요?

L은 "마지막"을 의미합니다. 날짜 필드에 L이면 해당 월의 마지막 날, 요일 필드에 L이면 마지막 해당 요일을 뜻합니다. W는 가장 가까운 평일을 선택합니다. Quartz와 Spring Cron에서 지원합니다.

크론잡이 예상 시간에 실행되지 않으면 어떻게 디버깅하나요?

1) 서버 시간대 확인(TZ 설정), 2) 크론 로그 확인(/var/log/cron), 3) crontab -l로 등록 확인, 4) crond 서비스 상태 점검. 시간대 불일치가 가장 흔한 원인입니다.

크론잡 실행 시 환경 변수 문제가 발생합니다.

크론은 최소한의 환경 변수만 로드합니다. 스크립트 시작 부분에 PATH 등 필요한 환경 변수를 명시하거나 `source /etc/profile`을 추가해 전체 환경을 로드하세요.