반응형

리눅스로 작업을 하다보면 가끔 윈도우의 작업스케줄러와 같은 기능이 필요할 때가 있습니다. 리눅스에서는 일정 시간이 되면 설정한 작업을 수행을 하는 스케줄러로 대표적인 것이 crontab이 있습니다. crontab은 대부분의 리눅스 배포판에 기본적으로 설치되어 있어 별다른 설치가 필요없는 경우가 많습니다. 대부분의 용도에서 생각보다 단순한 작업으로 스케줄을 추가할 수 있습니다.

 

기본 명령어

스케줄 추가

crontab -e

스케줄 조회

crontab -l

스케줄 삭제

crontab -r

 

다른 옵션이 몇개 더 있긴 한데, 사용하는 일이 극히 드물겁니다.

 

시간 설정

스케줄을 추가시키면, 바로 vi나 nano와 같은 텍스트 에디터가 실행됩니다. 텍스트 하단에 본인이 원하는 스케줄을 추가할 수 있는데, 그 형식은 다음과 같습니다.

*    *    *    *    *    명령어 

위에 별(*)표가 5개가 있는데, 의미는 다음과 같습니다.

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

만약 모두 '*'로 표기를 한다면 매 1분마다 명령어를 실행합니다.

시간 등을 설정하는 요령의 예시는 다음과 같습니다.

  • "*   */2   *   *   *"   :   2시간마다 매분 실행
  • "15,45   *   *   *   *"   :  매시 15분과 45분에 실행
  • "0   0   *   *   mon"   또는 "0   0   *   *   1"   : 매주 월요일 0시 0분에 실행
    • 요일에서 0과 7은 일요일을 의미합니다
  • "*   9-18   *   *   mon,tue,wed,thu,fri"   또는 "*   9-18   *   *   1-5"   : 
    • 월요일에서 금요일까지 9시부터 18시까지 매분 실행

 

스케줄을 추가하고나면, :wq 또는 crtl+x 후 저장 등, 문서를 저장 후 종료하면 됩니다.

 

반응형

+ Recent posts