알아두면 쓸데있는 IT 잡학사전

요약

명령어나 스크립트의 실행을 예약한다.


경로

/usr/bin/at


사용방법

at [옵션] [시간] [날짜] [+증가시간]

시간 날짜 : 명령어나 스크립트를 실행할 시간과 날짜를 지정한다.

+증가시간 : 앞서 명시한 시간을 기준으로 증가 시간 만큼이 지난 후 실행한다.

-q queue : queue 이름을 지정한다. 큐 이름으로 a~z, A~Z가 쓰일 수 있따. 큐 이름을 지정하지 않으면 at는 a, batch는 b를 사용한다. 알파벳 순서로 뒤의 이름을 갖는 큐는 더 큰 niceness 값을 갖는다. '=' 큐는 현재 수행되는 작업에 대한 큐로 예약된다. 대문자 이름의 큐에 추가된 작업은 batch의 작업처럼 처리된다.

-m : 출력 결과가 없더라도 작업이 완료될 때 사용자에게 메일을 보낸다.

-f filename : 스크립트 파일 등을 실행해 줄 때 사용한다.

-l : 예약된 작업 목록을 보여준다. atq 명령어와 같다.

-v : 작업이 수행될 시간을 보여준다.

-d : 예약된 작업을 삭제한다.(리눅스 명령어), atrm 명령어와 같다.

-r : 예약된 작업을 삭제한다.(유닉스 명령어), atrm 명령어와 같다.


설명 및 예제

at는 명령어와 스크립트 파일을 특정 시간에 실행할 수 있도록 예약하는 기능을 한다. 즉, 시스템의 부하가 적은 시간에 실행하거나 예약된 시간에 꼭 실행해야 하는 작업을 자동으로 처리하고자 할 때 사용한다.


at으로 시행할 시간 설정

예약작업 기능이므로 시간 설정이 중요하다. at 시간 설정은 날짜와 시간을 정해주는 시간 설정과 현재 시간이나 정해진 시간에서 증가시간을 설정해 주는 방법이 있다.


증가시간을 이용한 설정

지금부터 6시간 뒤에 Control.sh 스크립트를 실행하고 싶으면 -f 옵션을 사용하여 예약 작업으로 등록한다.

# at now + 6 hours -f Control.sh

리다이렉션(<)을 이용해도 된다.

# at now + 6 hours < Control.sh

4번 예약 작업을 삭제하고 싶다면 -d 옵션 다음에 삭제할 작업번호를 지정한다.

# at -d 4

at의 사용 권한 설정

at 명령어는 at.allow와 at.deny 두 파일을 이용해 일반 사용자의 사용 권한을 지정해 줄 수 있따. /etc/at.allow 파일이 있으면 at.allow에 기록된 사용자만 at 명령어를 사용할 수 있으며, 이 파일이 없으면 /etc/at.deny에 기록되지 않은 사용자만 사용할 수 있다. 두 파일 모두 없다면 관리자만 사용할 수 있다.


관련 명령어

atq : 예약된 작업 목록을 출력한다.

atrm : 예약된 작업 목록을 삭제한다.

batch : 시스템 부하가 일정 이하일 때 명령을 실행한다.

cron : 정기적으로 예약된 작업을 수행한다.

'개발 > Linux' 카테고리의 다른 글

[리눅스 명령어]batch  (0) 2018.09.04
[리눅스 명령어]basename  (0) 2018.09.04
[리눅스 명령어]arping  (0) 2018.09.04
[리눅스 명령어]arp  (0) 2018.09.04
[리눅스 명령어]arch  (0) 2018.09.03