본문 바로가기
개발팁

linux crontab 사용법, linux scheduler, crontab이란?, crontab 확인방법, centos crontab, crontab 매개변수, crontab설정

by devscb 2024. 7. 29.
반응형

 

crontab이란?

윈도우의 스케쥴러와 비슷한 역할을 하는것으로,
"특정 시간에 특정한 작업을 해주는 프로그램"입니다.

crontab 사용법

crontab -e 명령어를 치면 주기적으로 실행되는 항목이 무엇인지 확인할 수 있으며,
어떤 작업을 언제 실행할지 정의할 수 있습니다.

예를 들면 아래와 같이 명령어를 입력후 엔터를 치면,

crontab -e

아래와 같은 화면이 뜹니다.
vi 로 파일을 연 것 처럼 보여지게 됩니다.

crontab

해당 값들을 수정하고 ESC를 누른 후, :wq 를 타이핑하여 엔터하면 crontab(스케줄러) 가 반영되어 내가 설정한 시간에 작업이 수행됩니다.

crontab

각 줄은 어떤 명령을 언제 실행할 것인지 각각의 항목을 뜻합니다.
한 row에서 각 항목이 의미하는 바는 다음과 같습니다.

crontab 설명

즉, 몇분, 몇시, 몇일, 몇월, 무슨요일에 어떤 항목을 실행할 것인지를 설정합니다.
*은 every를 뜻합니다.
마지막 부분의 값(요일)에서, 0은 일요일이고, 1부터 월요일, 6이 토요일입니다.

예를 들어, 아래 예제를 살펴보겠습니다.

* 1 2 3 4 /home/test.sh

이 crontab의 뜻은
3월 2일 목요일 1시 매 분(*) 마다 /home/test.sh 를 실행한다는 의미입니다.

다양한 사용 예제

# 매분 실행
* * * * * /home/test.sh

# 매일 매시간 0분, 20분, 40분에 실행
0,20,40 * * * * /home/test.sh

# 매일 1시 0분부터 20분까지 매분 실행
0-20 1 * * * /home/test.sh

# 매 15분마다 실행
*/15 * * * * /home/test.sh

crontab 백업

crontab을 혹시라도 잘못 수정할 경우를 대비하여 아래와 같이 crontab을 등록하여 백업할 수 있습니다.

* 1 * * * crontab -l > /home/crontab_backup.txt

이 뜻은 매일 1시마다 crontab -l 을 실행하고, 그 결과를 /home/crontab_backup.txt에 쓰겠다는 뜻입니다.
crontab -l은 cat 명령어로 파일을 읽어들인 것과 같이, 크론탭 내용이 나오게 하는 명령어 입니다.

#crontab, #linux, #scheduler, #주기, #스케쥴러

728x90
반응형

댓글