다섯 필드
cron 표현식은 공백으로 구분한 다섯 필드로 되어 있으며, 스케줄러에게 작업을 언제 실행할지 알려 줍니다. 왼쪽부터 차례로:
| 분 | 0-59 |
| 시 | 0-23 |
| 일 | 1-31 |
| 월 | 1-12 |
| 요일 | 0-6(일요일 = 0) |
현재 시각이 모든 필드와 맞을 때 작업이 실행됩니다.
특수 문자
*모든 값.,목록:1,15는 1일과 15일.-범위: 마지막 필드의1-5는 월요일부터 금요일./간격: 분 필드의*/10은 10분마다.
자주 쓰는 일정
*/5 * * * * | 5분마다 |
0 * * * * | 매시 정각 |
0 0 * * * | 매일 0시 |
30 8 * * 1-5 | 평일 8시 30분 |
0 0 1 * * | 매월 1일 0시 |
0 3 * * 0 | 매주 일요일 3시 |
어떤 표현식이든 cron 표현식 해석기에 붙여 넣으면 뜻을 말로 읽을 수 있고, 다음 실행 시각도 알 수 있습니다.
흔한 함정
- 시간대: cron은 서버 시계를 쓰며, 많은 경우 UTC입니다. 한국 시간 9시에 돌리려면 UTC로는 0시입니다.
- 일과 요일 둘 다: 둘 다 지정하면 둘 중 하나만 맞아도 실행됩니다. 둘 다 맞을 때가 아닙니다.
- 초: 표준 cron에는 초 필드가 없습니다. Quartz나 Spring 같은 일부 시스템은 맨 앞에 초를 더해 필드가 여섯 개가 됩니다.