cron (스케줄러)
- 관리자들이 고정된 간격을 갖는 지정 날짜 및 시간마다 주기적으로 정기적인 작업을 처리하기 위해 소프트웨어를 실행토록 환경을 설정하는 시간기반 job스케줄러 성격의 데모 프로세스
- 사용자는 crontab명령으로써 cron이 crontab파일에 접근하여 쉘 명령어들이 주어진 일정에 주기적인 실행하도록 작업 목록을 정의하는 방법만 이해하면 된다
- 기본 명령어
sudo crontab -e
: 설정 및 수정
sudo crontab -l
: 목록 보기
sudo crontab -r
: 삭제
sudo service cron stop
: 중지
sudo service cron restart
: 재시작
- crontab
- 분 시 일 월 요일 [실행할 작업]
- 해당 사항이 있는 자리에만 숫자를 적고 나머지는 *로 표기
- 요일의 경우 일요일이 0이고 토요일이 6이다.
- 아무것도 입력하지 않고 * * * * * 으로 두면 매 분마다 실행
- ? : 특정한 값이 없음을 뜻합니다.
- : 범위를 뜻합니다. (예) 월요일에서 수요일까지는 MON-WED로 표현
- , : 특별한 값일 때만 동작 (예) 월,수,금 MON,WED,FRI
- / : 시작시간 / 단위 (예) 0분부터 매 5분 0/5
- L : 일에서 사용하면 마지막 일, 요일에서는 마지막 요일(토요일)
- W : 가장 가까운 평일 (예) 15W는 15일에서 가장 가까운 평일 (월 ~ 금)을 찾음
- '#' : 몇째주의 무슨 요일을 표현 (예) 3#2 : 2번째주 수요일