Crontab에 대하여 알아보고 사용해보기
리눅스에서 소프트웨어를 매번 실행시키기 귀찮다면 Crontab을 사용해보자!



Crontab 이란?



Crontab의 특징




Crontab 사용해 보기

앞의 설명처럼 Crontab은 일정 시간에 사용자 개입 없이 주기적으로 프로그램이 실행되도록 도와주는 툴이다.



Crontab 에디터에 접근하기 위한 방법은 다음과 같다.

$ crontab -e



에디터에 접근하지 않고, crontab 작업 목록만 확인하는 방법은 다음과 같다.

$ crontab -l



crontab 작업 목록을 초기화하고 싶다면 방법은 다음과 같다.

$ crontab -r



Crontab으로 작업을 생성하는 방법은 다음과 같다.

* * * * * ls -al



별은 무엇이고 어떻게 사용하는 것인가?

*       *        *       *        *
분(0-59)  시간(0-23)  일(1-31)  월(1-12)   요일(0-7)



매분

# 매분 test.py 실행
* * * * * /폴더/test.py



특정 시간

# 매주 금요일 오후 3시 30분에 test.py 실행
30 15 * * 5 /폴더/test.py



반복

# 매일 매시간 0분, 30분에 test.py 를 실행
0,30 * * * * /폴더/test.py



특정 범위

# 매일 오후 3시 0분부터 30분까지 매분 tesh.py 를 실행
0-30 15 * * * /폴더/test.py



특정 간격

# 매 30분마다 test.py 를 실행
*/30 * * * * /폴더/test.py




Crontab 주의 사항

# 잘못된 예시
* * * * *
/폴더/test.py
# 좋은 예시
* * * * * /폴더/test.py



Crontab 로깅 하기

Crontab 작업 기록을 상시로 남기는 방법은 다음과 같다.

* * * * * /폴더/test.py > /폴더/test.py.log 2>&1



Crontab을 오랫동안 실행해야 할 경우

* * * * * /폴더/test.py >> /폴더/test.py.log 2>&1




재배에 Crontab 사용해보기

*/30 * * * * python3.7 /home/pi/camera/camera.py