Linux
[Linux] Crontab
2juhyunju
2022. 8. 18. 10:10
Crontab
Crontab 이란 주기적인 작업예약을 하는 리눅스 명령어이다. 주기적인 작업예약이란 몇월 몇일 몇시 몇분 마다 이 작업을 실행해줘 라고 예약명령을 하는것이다.
Crontab 명령어 사용법
crontab -e
crontab 명령어에 -e 옵션을 사용하면 /tmp 디렉토리에 crontab. 형태의 임시 파일이 생성되며 임시 파일을 편집할 수 있는 편집기가 실행된다. 작업을 등록하기 위해서는 지정된 형식에 맞게 예약 작업의 실행주기, 실행 내용을 작성하고 저장해야 한다. 작업 내용은 총 6개의 필드로 되어있고 각 필드는 공백으로 구분하는것이 보통이다.
구분 | 내용 |
분 | 0~59분 까지 입력가능하다. |
시 | 24시 형태로 0~23시까지 입력 가능하다. |
일 | 0~31일 까지 입력가능하다. (단, 해당 월에 있는일만 적용 예:12월은 31일까지) |
월 | 1~12월까지 입력 가능하다. 영어로도 표기 할 수 있다. |
요일 | 요일을 입력할 수 있다. 요일은 0~7 까지의 숫자로 이루어져있으며 0은 일요일 7은 다시 일요일을 의미한다. 영어로도 표기할 수 있다. |
명령어 | 실행할 명령어 또는 스크립트 파일의 경로를 입력 할 수 있다. |
또 한 깍 필드에 값을 지정할 때 숫자 이외에 몇 가지 특수 기호 들을 사용할 수 있다.
특수 기호 | 내용 |
* | 모든 조건에 대해서 무조건 실행 |
- | 범위를 지정할 수 있다. |
, | 다수의 값을 지정할 수 있다. |
/ | 조건에 대한 주기를 설정할 수 있다. |
Crontab 예제
1. 매월 3일 오전 9시 30분에 실행
30 9 3 * * 명령어
2. 매주 화요일 오후 3시에 5분마다 실행
*/5 15 * * 2 명령어
3. 3월 매주 월요일 오전 3시부터 5시까지 실행
0 3-5 * 3 1 명령어
4. 매월 첫 번째 목요일 오전 1시와 오후 1시에 실행
매월 첫 번째 목요일 오전 1시와 오후 1시에 실행
* 1,13 1-7 * 4 명령어
// * 첫 번째 주라는 조건이 걸려있기 때문에 매월 첫 번째 주는 1일과 7일 사이에 존재하므로 1-7로 표시
Crontab 실행
정상적으로 Crontab 파일을 작성 해주면 다음과 같은 명령어로 주기적 작업을 예약할 수 있다.
crontab 파일명