Cron 표현식 해석기
다섯 필드: 분, 시, 일, 월, 요일.
필드별로
| 필드 | 적힌 값 | 뜻 |
|---|
다음 실행
| # | 실행 시각 |
|---|
시각은 기기의 시간대로 표시됩니다. 작업을 실제로 도는 서버는 다른 시간대일 수 있습니다.
이 도구가 하는 일
cron 문법은 짧고 잘못 읽기 쉽습니다. 잘못 읽은 대가는 아무도 눈치채지 못한 채 몇 달 동안 엉뚱한 시각에 도는 작업입니다. 이 페이지는 그 줄을 문장으로 되돌리고, 더 쓸모 있게는 실제로 실행될 날짜를 보여 줍니다.
사용 방법
- 1 cron 줄을 붙여 넣거나 미리 준비된 예시로 시작하세요.
- 2 문장을 읽고 필드를 하나씩 확인하세요.
- 3 다음 실행 목록과 맞춰 보세요. 실수는 거기서 드러납니다.
다섯 개의 필드
순서는 항상 이대로이고 구분은 언제나 공백입니다. 각 필드에는 숫자, 1,15 같은 목록, 9-17 같은 범위, */5 같은 간격, 또는 모든 값을 뜻하는 별표를 쓸 수 있습니다.
| # | 필드 | 허용 범위 | 비고 |
|---|---|---|---|
| 1 | 분 | 0-59 | — |
| 2 | 시 | 0-23 | — |
| 3 | 일 | 1-31 | 아래 날짜 규칙 참고 |
| 4 | 월 | 1-12 | JAN-DEC도 인식 |
| 5 | 요일 | 0-7 | 0과 7 모두 일요일; SUN-SAT도 인식 |
날짜 필드의 함정
날짜 필드와 요일 필드가 둘 다 별표가 아닌 값이면, cron은 둘 중 하나만 맞아도 작업을 돌립니다. 둘 다가 아닙니다. 그래서 "0 0 1 * MON"은 매월 1일에도, 매주 월요일에도 실행됩니다. 처음에는 거의 모두가 놀라기 때문에, 해당될 때는 이 도구가 표시해 줍니다.
간격은 "지금부터 N마다"가 아닙니다
분 필드의 */20은 매시 0분, 20분, 40분을 뜻합니다. "마지막 실행 후 20분"이 아닙니다. 한 번 도는 데 25분이 걸려도 다음 실행은 그대로 40분에 시작합니다. 간격은 범위의 시작점부터 세며, 5-20/5는 5부터 셉니다.
시간대와 사라지는 시각
cron은 여러분의 시계가 아니라 서버의 시계를 따릅니다. 그래서 02:30으로 맞춘 작업이 예상과 다른 현지 시각에 돌 수 있습니다. 더 나쁜 것은, 서머타임을 쓰는 지역에서는 그 시각이 한 해에 한 밤은 아예 존재하지 않고 다른 한 밤에는 두 번 온다는 점입니다. 건너뛰어서도 두 번 돌아서도 안 되는 일은 01:00~03:00을 피해 잡으세요.