Linux

[Llinux] Cron에 대해 알아보자

Binceline 2016. 9. 29. 02:19



Cron이라는 건 리눅스에서 백그라운드로 돌며 등록한 작업을 특정 시간에 실행시켜 주는 스케줄링 프로그램이다.

리눅스를 설치하면 기본으로 존재하는데, 사용법이 간단하다.

윈도우의 작업 스케줄러와 닮았지만... 

왜인지 모르게 작업 스케줄러는 불편하다..


사용법


1. 터미널을 연다.


2. crontab -e를 입력한다.


3. 에디터 선택 화면이 나오는데 원하는 것으로 선택한다.


그러면



이런 내용의 파일이 열린다. (나는 emacs로 열었당.)


파일 가장 에래에 보면 m h dom mon dow command 가 주석표시되어 있다.


순서대로 분, 시, 일, 달, 요일, 작업 이다.


그냥 숫자만 쓰게 되면 그 시간이 될 때마다 수행하는 것이지만,


*/1 같이 '*/숫자' 형태로 쓰게 되면 그 시간(기간?)이 지날 때마다 수행한다.


예를 들어 위 사진에 */1이라 되어 있는데, 그럼 1분마다이다. 


나는 웹서버에서 주기적으로 랭킹을 업데이트하는 php 코드를 실행하도록 작성해 놓았다.


이렇게 작성하고 끝내기 전에.. 정말정말 중요한 게 존재함..


4. 엔터로 줄바꿈을 꼭 해 줘야 등록이 된다.


그렇지 않으면 new crontab file is missing newline before EOF, can't install. 이라는 오류문구를 볼 것이다.



되게 간단해서 좋당.


만약 emacs -nw로 터미널에서 crontab 파일을 열고 싶다면 


터미널에서 export EDITOR="emacs -nw" 라고 입력하면 된다.


유저별로 crontab 파일이 따로 존재하니까 잘 이용하면 된다.

반응형