ComputerScience/System Programming

Automatic tasks, 리눅스 작업 예약 명령어 at, con, crontab

리눅스 jobs control  바로가기

Automatic tasks

 

at 와 cron

  • 리눅스에서 작업 예약하는 작업 예약 명령어
  • at
    • 지정된 시간에 1회 실행, 시간이 되면 수행하고 작업리스트에서 사라짐
    • at [옵션] [시간] [날짜] [+증가시간]
    • 대표적인 option
      • -m : 출력결과 없더라도, 작업완료될때 사용자에게 메일보냄
      • -f : 스크립트 파일 등을 실행
      • -l : 예약된 작업 목록 출력, atq 명령어 또한 같은 동작을 수행
      • -v : 작업이 수행될 시간 출력
      • -d : 예약된 작업을 삭제, atrm 명령어 또한 같은 동작 수행
  • atq
    • 현재 실행 예약이 된 at의 리스트를 보여준다. 언제 어떤 명령어 실행될지?
  • atrm [at번호]
    • 해당 at가 삭제된다.
  • at 사용예시
    • at now + 3 hours -f elice.sh
    • 지금으로부터 3시간 후에 elice.sh 스크립트 파일를 실행
  • crontab
    • 지정된 시간에 주기적으로 실행.
    • crontab [옵션]
    • 대표적인 옵션
      • -l : 현재 설정된 crontab정보
      • -e: 현재 계정의 crontab정보 수정
      • -r: 현재 계정의 crontab 정보를 모두 삭제
      • -u :특정 사용자의 crontab정보를 다루게 해줌(root권한 요)
    • crontab -l :설정된 정보 다 보여줌
    • comma(,)를 이용해 2가지 이상의 시간표현 가능
    • 만약 매주 월요일 오전 10시에 10분에 /backup.sh 을 실행해야 한다면,
      10 10 * * 1 /backup.sh 을 사용