Posts

Showing posts with the label crontab

정기적인 작업을 수행해 주는 스케쥴러들

Image
윈도우즈나 리눅스(유닉스), 또는 Mac OS X 같은 시스템에는 기본적으로 정기적으로 반복작업을 처리해 주는 스케줄러 프로그램 들이 내장되어 있습니다. 윈도우즈에서 작업 스케줄러 가 있는것 처럼 리눅스나 Mac OS X에는 cron 이라는 것이 있습니다. 윈도우즈는 GUI(Graphic User Interface)로 되어 있어 화면을 보고 마우스로 쉽게 설정을 할 수 있는 반면 리눅스는 쉘에서 텍스트 형태로 작성을 해야 하기 때문에 먼저 학습이 필요합니다. 1. 리눅스의 cron(crontab) Max OS X도 유닉스 계통이기 때문에 리눅스와 마찮가지로 cron 을 스케쥴러로 사용합니다. 1.1. crontab 명령어 자주 사용하는 crontab의 명령어 입니다. 명령어 설명 crontab -e 예약작업 설징 및 수정 crontab -l 예약된 작업의 목록 보기 crontab -r 예약된 작업 삭제 1.2. 설정하기 cron 을 설정하기 위해서는 crontab -e 을 입력하면 됩니다. $ crontab -e crontab -e 명령어를 처음 실행하면 아무 내용이 없는 빈 화면이 나오고 이미 설정이 되어 있는 경우라면 내용을 편집할 수 있는 화면이 나옵니다. 빈 화면이 나왔다는 가정하에 아래와 같이 가장 기본적인 명령어를 입력을 하고 저장을 합니다. ## 매 1분마다 `ls-l` 명령어를 실행 * * * * * ls -l 앞쪽에 있는 와일드카드 5개 는 실행하는 주기를 설정하는 것이고 마지막 뒤에 있는 <실행 명령어> 는 해당 주기에 따라 실행되는 명령어 입니다. 쉘명령어 뿐만아니라 스크립트도 실행할 수 있습니다. 한 주기에 해당하는 명령어 당 한줄로 작성을 해야 합니다. 5개의 와일드카드 의 의미는 아래와 같습니다. *      *      *      *      * 분(0-59)  시간(0-23)  일(1-31)  월(1-12)   요일(1-7) 7 이나 0 은 모