0 12 * * * Cron 표현식 파서에서 열기 필드별 설명
| 필드 | 값 | 해당 값 |
|---|---|---|
| 분 | 0 | 0 |
| 시 | 12 | 12 |
| 일 | * | 모든 값 |
| 월 | * | 모든 값 |
| 요일 | * | 모든 값 |
다음 실행 시간
예시: 2026년 1월 1일 이후 처음 6회 실행(UTC).
- 2026년 1월 1일 (목) 12:00
- 2026년 1월 2일 (금) 12:00
- 2026년 1월 3일 (토) 12:00
- 2026년 1월 4일 (일) 12:00
- 2026년 1월 5일 (월) 12:00
- 2026년 1월 6일 (화) 12:00
바로 쓰는 버전
crontab
0 12 * * * /path/to/command crontab -e로 이 줄을 추가하세요. CRON_TZ나 TZ를 설정하지 않으면 서버 시간대로 실행됩니다.
Kubernetes CronJob
apiVersion: batch/v1
kind: CronJob
metadata:
name: every-day-at-noon
spec:
schedule: "0 12 * * *"
timeZone: "Etc/UTC"
concurrencyPolicy: Forbid
jobTemplate:
spec:
template:
spec:
restartPolicy: OnFailure
containers:
- name: job
image: busybox:1.36
command: ["/bin/sh", "-c", "date; echo run"] spec.timeZone을 설정하세요(Kubernetes 1.27+). 없으면 controller manager의 시간대(보통 UTC)를 따릅니다.
GitHub Actions
on:
schedule:
- cron: '0 12 * * *'
workflow_dispatch: GitHub Actions는 항상 UTC를 쓰고 최소 간격은 5분이며, 부하가 크면 예약 실행이 늦게 시작될 수 있습니다.
Quartz
0 0 12 * * ? Quartz는 맨 앞에 초를 두고, 일 또는 요일 중 하나에 ?가 필요합니다. 요일은 일요일부터 1–7이므로 영문 약어가 더 안전합니다.
Spring
@Scheduled(cron = "0 0 12 * * *") Spring @Scheduled(cron = …)는 초와 일반 다섯 필드, 모두 여섯 필드를 씁니다.
자주 묻는 질문
› cron에서 12시는 정오인가요, 자정인가요?
cron은 24시간제를 쓰므로 12는 정오, 0은 자정입니다.
› 0 12 * * *는 어느 시간대로 실행되나요?
Cron은 실행하는 머신이나 서비스의 시간대를 씁니다. Linux에서는 CRON_TZ나 TZ를 설정하지 않으면 시스템 시간대, Kubernetes CronJob은 spec.timeZone을 지원하고, GitHub Actions는 항상 UTC입니다.
› 배포 전에 일정을 확인하려면 어떻게 하나요?
이 사이트의 Cron 표현식 파서에서 0 12 * * *를 여세요. 각 필드를 설명하고 앞으로의 실행 시간을 현지 시간 또는 UTC로 보여 줍니다. 모두 브라우저에서 처리됩니다.