Computer System/Linux

[Linux] crontab - 리눅스 예약, 반복 작업

해리팍 2017. 7. 14. 16:58
반응형

안녕하세요.


리눅스에는 예약, 반복 작업을 등록해놓을 수 있는 'crontab' 이라는 프로그램이 있습니다.


crontab의 사용법을 간단히 알아보겠습니다.



1. Usage



usage: crontab [-u user] file

crontab [ -u user ] [ -i ] { -e | -l | -r }

(default operation is replace, per 1003.2)

-e (edit user's crontab)

-l (list user's crontab)

-r (delete user's crontab)

-i (prompt before deleting user's crontab) 




2. 예약/반복 작업 작성 방법


contab에 작업을 등록할 때에는 분, 시, 일, 월, 요일을 지정할 수 있습니다.


우선 각각의 범위는 다음과 같습니다.



* 분 - 0 ~ 59


* 시 - 0 ~ 23


* 일 - 1 ~ 31


* 월 - 1 ~ 12


* 요일 - 0 ~ 6 ( 0 : 일요일, 1 : 월요일 ... 6 : 토요일)



따로 조건을 주지 않을 때에는 '*' (모두) 로 입력하면 됩니다.




위의 5가지 조건이 있고, 5가지 조건이 모두 충족할 때 지정된 명령어를 시작 합니다.


각각의 조건을 구분하는건 스페이스로 합니다.


작성 시 1개의 숫자만 입력해도 되고,


여려개의 숫자를 콤마 (',') 로 구분해도 되고 (이 때 띄어쓰기를 하면 안됩니다.)


하이픈 ('-')을 사용해서 범위로 지정할 수도 있습니다.


'/' 를 사용하시면 주기를 지정할 수 있습니다. (ex : * */2 * * * -> 매 2시간 마다)


작성 할 때에는


분 시 일 월 요일 명령어 


의 형태로 작성해주시면 됩니다.



3. 등록, 확인, 삭제


(1) 등록


$ crontab -e 


명령어를 입력하면 vi 창이 뜹니다.


해당 창에 명령어들을 작성해주고 저장, 닫기를 하시면 됩니다.


(2) 확인


$ crontab -l


(3) 삭제


$ crontab -r



4. 예시


(1) 0 * * * * pwd : 매시 정각 (0분) 마다 pwd 명령어를 실행


(2) 0 1 * * * pwd : 매일 1시 0분 마다 pwd 명령어를 실행


(3) 0 12 1,3,5 * * pwd : 매월 1, 3, 5일 12시 0분 마다 pwd 명령어를 실행


(4) 0 0 * * 1-3 pwd : 매 월, 화, 수요일 0시 0분 마다 pwd 명령어를 실행


(5) * */2 * * * pwd : 2시간 마다 pwd 명령어를 실행



반응형