스마트웹앱콘텐츠전문가/웹서버

[스케줄링] cron 사용

9D4U 2021. 3. 31. 14:22
728x90
반응형

 

스케줄링을 하는 방법은 여러가지가 있겠지만,

 

리눅스 환경에서는

 

'cron'을 사용할 수 있습니다.

 

예약 작업 또는 반복된 작업을 수행하려고 하는 경우,

 

다음과 같은 예시로 사용할 수 있습니다.

 

(예) 매월 1일 0시 0분에 해당 명령어를 실행.

~#crontab -l 0 0 1 * * 명렁어

 

 

○ cron job 등록하기

'crontab -e' 를 통해 cron job을 등록할 수 있습니다.

~#crontab -e
----------------------- 
0 0 1 * * 명령어 
-----------------------

 

등록 및 수정은 vi 사용과 유사합니다.

 

○ cron job 목록보기

'crontab - l'을 통해서 목록보기가 가능합니다.

~#crontab -l

 

※ cron job 설정 시, 명령이 호출되는 시점 설정이 중요합니다.

분 시 일 월 요일 

0 0 1 * *        <- 매월 1일 0시 0분마다 
0 1 * * *        <- 매일 1시 마다 
10 * * * *       <- 매시 10분 마다
* * * * *        <- 1분 마다 
0 0 * * 1        <- 매 월요일 0시 0분 마다

 

요일은 0(일),1(월),2(화),3(수),4(목),5(금),6(토)

 

○ crontab으로 등록된 job 로그 확인

~# cat /var/log/cron

 

물론, crontab 등록(수정) 시 로그를 특정 파일에 남기게 설정할수 있습니다.

~# crontab -e 
---------------- 
0 0 1 * * 명령어 > ~/test/log_'date +\%Y\%m\%d'.txt 2>&1 <- 해당 txt파일에 덮어쓰기 

0 0 1 * * 명령어 >> ~/test/log_'date +\%Y\%m\%d'.txt 2>&1 <- 해당 txt파일에 누적 기록
----------------

 

 

728x90