linux 명령어 at

작업시간 설정하기.

$ at
Garbled time
$
Linux 명령어 at

Linux 명령어 at

특정 시간에 명령이나 작업을 예약하여 실행하는 명령어

1. 자세한 설명

at 명령어는 Linux에서 특정 시간에 명령이나 작업을 예약하여 실행할 수 있는 명령어입니다. at은 일회성 작업 스케줄링에 유용하며, 예약된 작업은 atd 데몬을 통해 실행됩니다. 반복적인 작업은 cron 명령어와 함께 사용합니다.

2. 사용법

  1. 작업 예약
    at [시간]
    특정 시간에 작업을 예약합니다.
  2. 예약된 작업 확인
    atq
    예약된 작업 목록을 확인합니다.
  3. 예약된 작업 삭제
    atrm [작업 번호]
    예약된 작업을 취소합니다.

3. 자세하게 설명

at 명령어는 다음과 같은 특징을 가지고 있습니다:

  • 유연한 시간 설정: now + 10 minutes, 2pm tomorrow, midnight 등 다양한 시간 형식을 지원합니다.
  • 입력된 명령 실행: 입력된 명령어를 예약 시간에 자동으로 실행합니다.
  • 일회성 작업: 작업은 단 한 번 실행되며, 반복 작업은 cron을 사용해야 합니다.
  • 대화형 입력 지원: at 명령 실행 후 명령어를 대화형으로 입력합니다.

4. 자세한 명령어 사용법

다음은 at 명령어의 다양한 사용 예제입니다:

# 특정 시간에 작업 예약
$ echo "echo Hello, World!" | at 14:30

# 5분 후에 작업 예약
$ echo "ls -l" | at now + 5 minutes

# 특정 날짜와 시간에 작업 예약
$ echo "rm temp.txt" | at 8:00 AM tomorrow

# 명령어를 대화형으로 입력
$ at 16:00
at> echo "This is a test"
at> 

# 예약된 작업 목록 확인
$ atq

# 특정 작업 취소
$ atrm 2

# 현재 날짜 기준 1시간 후 작업 예약
$ echo "df -h" | at now + 1 hour

# 특정 시간에 스크립트 실행 예약
$ echo "bash /path/to/script.sh" | at 22:00

# 로그 파일 생성 작업 예약
$ echo "echo 'Log Entry' >> log.txt" | at midnight

# 예약 작업 실행 파일 위치 확인
$ ls /var/spool/at

# 작업 예약 상태 확인
$ at -c 1

# 여러 작업 예약을 반복적으로 설정하는 스크립트
#!/bin/bash
for i in {1..5}; do
  echo "Task $i" | at now + $i minutes
done

# 결과를 로그 파일에 저장
$ echo "echo Task Complete" | at now + 10 minutes && sudo journalctl -u atd > at_log.txt

# 대량 작업 예약 자동화
$ echo "echo 'Batch Task' >> batch.log" | at 3:00

# 잘못된 예약 시간 입력 시 오류 확인
$ at wrong_time

# JSON 데이터로 작업 내역 저장
$ atq | jq -R '{tasks: .}'

# 특정 조건에서 예약 작업 실행
$ [ "$(date +%H)" -eq 23 ] && echo "Backup Task" | at 23:30
            

위의 예제는 at 명령어를 사용하여 다양한 작업을 예약하고 관리하는 방법을 보여줍니다.

© 2025 Linux 명령어 설명

Categories:

No responses yet

답글 남기기