setting, git, shell etc

crontab

qkqhxla1 2017. 5. 12. 16:13

크론탭에 관한 설명은 찾아보면 많다. 일단 기본적인 정보와 getting started처럼 기본 사용법만 적었다.


현재 크론탭 스케쥴러 수정.

crontab -e


크론탭 스케쥴러 확인.

crontab -l


크론탭 스케쥴러 수정 시 vi편집기처럼 사용이 가능하다.


크론탭은 한줄로 작성해야 하며 주석 작성시 #를 쓰면 된다. 한줄 포맷 예시이다.

#example

22 15 12 5 5 /usr/bin/python /example/practice.py


순서대로 분,시간,일,월,요일,실행시킬 명령어이다. 


숫자 대신 *를 쓰면 그 시간대나 요일에 관계없이 항상 실행시킨다는 뜻이다. 참고로 맨 뒤의 실행시킬 명령어는 절대 경로로 전부 다 써야 한다.


크론탭이 잘 작동하는지 예시를 돌려보려면 practice.py같이 파이썬 스크립트를 만들고 내부를 print 'Hello World'같은 간단한 한줄로 채워주자. 그리고 크론탭에 현재 시각 +1분으로 설정하고 돌려보면 된다.


현재 5월 12일 금요일 4시 7분이다. 그럼 4시 8분에 한번 실행되도록 크론탭을 설정할거다. 다만 practice.py내부에 print문이 있더라도 콘솔에 출력하지 않으므로 파일로 출력해서 실행이 되었는지 확인한다. /example/a.out에 출력하도록 설정해놓았다.


8 16 12 5 5 /usr/bin/python /example/practice.py > /example/a.out

앞에는 순서대로 8분,오후4시,12일,5월,금요일이다. crontab에서 저장 후 8분이되면 a.out파일 안에 Hello World가 찍혀있는것을 확인할수 있다. 여러 명령어를 실행시킬땐 괄호로 감싸면 된다.

ex) 8 16 12 5 5 (cd /example; /usr/bin/python practice.py)


한번만 돌려야하는 프로세스의 경우 크론탭에 넣고, 해당 시간 후 ps -ef | grep 스크립트파일이름 등으로 검색해서 현재 프로세스가 떠있는지 확인할수 있다.


크론탭 테스트용 개꿀 사이트

https://crontab.guru/


참고.

https://www.thesitewizard.com/general/set-cron-job.shtml

'setting, git, shell etc' 카테고리의 다른 글

expect  (0) 2017.07.14
shell script 기초.  (0) 2017.06.13
intellij 뚝뚝 끊김.  (0) 2017.03.16
gradle 관련.  (0) 2017.02.19
맥에서 pip로 모듈 설치시 operation not permitted에러  (0) 2017.02.18