crontab


  요즘 파이썬으로 페이스북의 데이터를 분석하여 트렌드를 검출하는 프로젝트를 진행하고 있다. 데이터를 분석하기 위해서는 일정 시간 간격으로 데이터를 수집해야만 했고 그를 위해서 서버가 필요했다. 그래서 개인적으로 서버컴을 가지고 계신 선생님께 양해를 구하고 원격 접속을 하여  아무래도 django를 처음으로 써보고 그것을 jython 환경에서 돌려야 하다보니 이래저래 시행착오를 많이 겪었다.


  하지만 이러한 삽질들을 모두 무효로 만들어 버리는 명령어가 있었으니 crontab 이다. crontab은 리눅스에서 사용할 수 있는 작업 스케줄러로 프로세스를 예약하고 데몬에서 돌아간다. 이것은 특이한 문법을 통하여 프로세스를 실행할 시간을 지정할 수 있다.


  등록하는 방법은 어렵지 않은데 그 전에 시간을 지정하는 방법을 먼저 알아보자


등록형식


* * * * * [수행할 명령어]


인데 첫 번째 별부터 분(0 - 59), 시(0 - 23), 일(1 - 31), 월(1 - 12), 요일(0 - 6, 0 = 일요일)을 의미한다. 예제를 한 번 살펴

보자.


1분마다 test.sh 스크립트를 실행한다.


매시 1분마다 test.sh 스크립트를 실행한다.(00시 1분, 01시 1분, 02시 1분...)


1시부터 23시까지 6시간마다 test.sh 스크립트를 실행한다. (01시 30분, 07시 30분, 13시 30분, 19시 30분)


여러 개의 명령어를 사용하고 싶다면 && 를 사용하여 연결할 수 있다. 위의 예제에서는 가상환경을 activate하고 스크립트를 실행한다.


옵션


스크립트 등록


crontab -e

실행할 프로세스 등록. 만약 기존에 예약한 작업이 없다면 편집기를 선택하라고 나오는데 무난하게 2번으로 하면 될 듯하다. 그리고 에디터에서 위의 예제와 같은 코드를 등록하고 Ctrl + X 를 하면 저장이 된다.


crontab -l

예약한 코드를 볼 수 있다.


crontab -r

현재 사용자의 모든 예약작업을 삭제한다.


참고링크


http://zetawiki.com/wiki/%EB%A6%AC%EB%88%85%EC%8A%A4_%EB%B0%98%EB%B3%B5_%EC%98%88%EC%95%BD%EC%9E%91%EC%97%85_cron,_crond,_crontab

블로그 이미지

NCookie

,

안드로이드에서 사용하는 유용한 단축키들을 모아놓은 링크입니다. 그 중 아래의 것은 많이 사용할 것 같은 단축키입니다.


Text Multi Selection

  • Mac : Ctrl+G
  • Windows/Linux: Alt+J

  아마 이 기능은 서브라임이나 비주얼 스튜디오 코드에서 Ctrl + D로 자주 사용해 보셨을 것입니다.




참고 링크


http://www.developerphil.com/android-studio-tips-of-the-day-roundup-4/

블로그 이미지

NCookie

,