리눅스에서 at 명령어는 한 번만 실행되는 작업을 예약할 때 사용됩니다. cron 명령어와 달리 정기적인 작업이 아니라 특정 시간에 한 번만 실행되는 명령어를 예약하고 싶을 때 유용합니다. 이를 통해 미래의 특정 시점에 명령이나 스크립트를 자동으로 실행할 수 있습니다.
at 명령어 기본 사용법
at 명령어는 다음과 같은 형식으로 사용됩니다:
at [시간]
여기서 시간은 명령이 실행될 때를 지정하며, 시각이나 날짜를 다양하게 표현할 수 있습니다. 예를 들어 now + 2 minutes, tomorrow, 또는 5pm과 같은 형태로 시간을 입력할 수 있습니다.
user@linux:~$ at 3pm
at> echo "작업이 예약되었습니다."
at> <Ctrl+D>
job 1 at 2024-10-18 15:00
위 명령은 오후 3시에 "작업이 예약되었습니다." 메시지를 출력하는 작업을 예약하는 예시입니다. Ctrl+D를 눌러 입력을 종료하고 작업을 저장합니다.
atq: 예약된 작업 확인
예약된 작업을 확인하려면 atq 명령어를 사용합니다. atq는 at queue의 약자로, 예약된 작업 목록을 보여줍니다.
user@linux:~$ atq
1 2024-10-18 15:00 a user
이 명령은 예약된 작업을 출력하며, 작업 번호와 실행 시간, 사용자 정보를 포함합니다.
atrm: 예약된 작업 삭제
예약된 작업을 삭제하려면 atrm 명령어를 사용합니다. 이 명령어는 atq에서 확인한 작업 번호를 사용하여 특정 작업을 제거합니다.
user@linux:~$ atrm 1
위 명령어는 작업 번호가 1인 예약된 작업을 삭제합니다.
at 명령어의 시간 형식
at 명령어에서 사용할 수 있는 시간 형식은 매우 유연합니다. 예를 들어 다음과 같은 방식으로 시간을 지정할 수 있습니다:
- now + 5 minutes: 현재 시간에서 5분 후 실행
- midnight: 자정에 실행
- noon: 정오에 실행
- tomorrow: 다음 날 같은 시간에 실행
- hh: 특정 시간에 실행 (예: 14:30)
user@linux:~$ at now + 1 minute
at> touch /home/user/testfile.txt
at> <Ctrl+D>
job 2 at 2024-10-18 15:01
위 예시는 현재 시간에서 1분 후에 testfile.txt라는 파일을 생성하는 작업을 예약하는 것입니다.
실행 예시
리눅스 터미널에서 at 명령어가 실제로 실행되는 모습은 다음과 같습니다:
user@linux:~$ at 16:00
at> echo "이 메시지는 오후 4시에 출력됩니다."
at> <Ctrl+D>
job 3 at 2024-10-18 16:00
user@linux:~$ atq
3 2024-10-18 16:00 a user
user@linux:~$ atrm 3
user@linux:~$ atq
# 더 이상 예약된 작업이 없음
이 예시는 오후 4시에 메시지를 출력하는 작업을 예약하고, 이후 예약된 작업을 삭제하는 과정을 보여줍니다.
주의 사항
at 명령어는 root 또는 특정 사용자만 사용할 수 있도록 제한될 수 있습니다. /etc/at.allow 파일과 /etc/at.deny 파일을 통해 사용 권한을 설정할 수 있습니다. 시스템 관리자라면 특정 사용자가 at 명령어를 사용하는 것을 허용하거나 제한할 수 있습니다.
참고사이트
'Linux' 카테고리의 다른 글
[리눅스] rsyslog 명령어 완벽 가이드 사용법(시스템 로그 관리) (0) | 2024.10.23 |
---|---|
[리눅스] tee 명령어 완벽 가이드 사용법(파일저장 & 화면출력) (0) | 2024.10.22 |
[리눅스] xargs 명령어 완벽 가이드 사용법(명령어 인수 전달) (0) | 2024.10.22 |
[리눅스] systemd timers 명령어 완벽 가이드 사용법(systemd 스케줄링) (0) | 2024.10.22 |
[리눅스] cron 명령어 완벽 가이드 사용법(스케줄링) (0) | 2024.10.21 |
[리눅스] groupmod 명령어 완벽 가이드 사용법(그룹 정보 수정) (0) | 2024.10.21 |
[리눅스] resize2fs 명령어 완벽 가이드 사용법(파일 시스템 크기 변경) (0) | 2024.10.21 |
[리눅스] badblocks 명령어 완벽 가이드 사용법(디스크 불량 섹터 검사) (0) | 2024.10.21 |