본문 바로가기
Java

[Cron] 크론(cron) 표현식 정리

by Real Iron 2019. 2. 20.

 Cron (크론)


cron이란? 유닉스 계열의 잡 스케줄러





 Cron 표현식 - 필드


Cron 스케줄러의 정규 표현식입니다.


7개의 각 필드로 구성되어 있으며, 각 필드의 내용은 아래와 같습니다.


자세한 설명은 위키백과를 참고하시면 됩니다 (물론 영어입니다...)

(https://en.wikipedia.org/wiki/Cron#CRON_expression)


필드명

값의 허용 범위 

허용된 특수문자 

초 (Seconds)

0 ~ 59

, - * /

분 (Minutes)

0 ~ 59

, - * /

시 (Hours)

0 ~ 23

, - * /

일 (Day)

1 ~ 31

, - * ? / L W

월 (Month)

1 ~ 12 or JAN ~ DEC

, - * /

요일 (Week)

1 ~ 7 or SUN ~ SAT

, - * ? / L #

연도 (Year)

empty or 1970 ~ 2099

, - * /



 Cron 표현식 - 특수문자


각 특수문자의 의미도 살펴보겠습니다.


 * : 모든 값을 뜻합니다.

 ? : 특정한 값이 없음을 뜻합니다. 

 - : 범위를 뜻합니다. (예) 월요일에서 수요일까지는 MON-WED로 표현

 , : 특별한 값일 때만 동작 (예) 월,수,금 MON,WED,FRI 

 / : 시작시간 / 단위  (예) 0분부터 매 5분 0/5

 L : 일에서 사용하면 마지막 일, 요일에서는 마지막 요일(토요일)

 W : 가장 가까운 평일 (예) 15W는 15일에서 가장 가까운 평일 (월 ~ 금)을 찾음

 # : 몇째주의 무슨 요일을 표현 (예) 3#2 : 2번째주 수요일



 Cron 표현식 - 예시


그럼 보다 상세한 예를 통해 cron식을 익혀봅시다.


출처는 IBM Knowledge Center입니다.



실제 적용된 테스트 케이스는 다음에.. 코드와 함께 준비하겠습니다.


한 번 알면 어렵지 않은 Cron 표현식을 잘 숙지하시길 바랍니다!


스케줄러 구성할 때 매우 편하게 느껴지네요 ㅎㅎ


마지막으로 이러한 어려움으로부터 쉽게 해방할 수 있는 사이트를 소개합니다.


● Cron Maker : http://www.cronmaker.com/


cron 표현식을 생성해줍니다.. 개인 공부용으로 사용하시면 좋을 것 같네요.




그럼 이상으로 cron에 대한 포스팅을 마치겠습니다.


감사합니다.



출처: https://zamezzz.tistory.com/197 [배워가는블로거]