linux 명령어 crontab

cron 관리하는 명령어. 백업하는 명령어이다.

$ crontab
Linux 명령어 crontab

Linux 명령어 crontab

특정 시간 또는 주기로 명령어나 스크립트를 실행하기 위한 작업 스케줄링 명령어

1. 자세한 설명

crontab 명령어는 Linux에서 작업 스케줄링을 위해 사용됩니다. 이 명령어는 사용자가 정해진 일정에 따라 명령어를 자동으로 실행하도록 계획을 설정할 수 있게 해줍니다. 주기적인 백업, 로그 회전, 스크립트 실행 등 다양한 작업을 자동화하는 데 매우 유용합니다.

2. 사용법

  1. crontab 편집
    crontab -e
    현재 사용자에 대한 크론 작업을 편집합니다.
  2. crontab 목록 보기
    crontab -l
    현재 설정된 크론 작업을 확인합니다.
  3. crontab 삭제
    crontab -r
    현재 사용자에 대한 크론 작업을 삭제합니다.

3. 자세하게 설명

crontab 명령어는 크론 테이블 파일을 관리합니다. 파일은 각 작업의 실행 시점을 설정하기 위해 5개의 필드와 명령어로 구성됩니다:

  • 분 (Minute): 0-59
  • 시 (Hour): 0-23
  • 일 (Day of Month): 1-31
  • 월 (Month): 1-12
  • 요일 (Day of Week): 0-7 (0과 7은 일요일)

각 필드에 *를 사용하면 “모든 값”을 의미하며, 쉼표(,)와 대시(-)를 사용하여 특정 범위나 목록을 설정할 수 있습니다.

4. 자세한 명령어 사용법

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

# 매일 오전 2시에 백업 스크립트 실행
0 2 * * * /home/user/backup.sh

# 매주 월요일 오전 9시 로그 정리
0 9 * * 1 /home/user/clean_logs.sh

# 매월 1일 자정 데이터베이스 백업
0 0 1 * * /home/user/db_backup.sh

# 매 5분마다 스크립트 실행
*/5 * * * * /home/user/check_status.sh

# 특정 사용자 크론 작업 편집
$ sudo crontab -u username -e

# 특정 파일을 크론 테이블로 설치
$ crontab my_crontab.txt

# 크론 작업 로그 보기
$ cat /var/log/syslog | grep CRON

# 매년 1월 1일 자정 스크립트 실행
0 0 1 1 * /home/user/new_year.sh

# 매주 일요일 오후 6시 이메일 알림 전송
0 18 * * 0 /home/user/send_email.sh

# 분기별 스크립트 실행 (1월, 4월, 7월, 10월)
0 0 1 1,4,7,10 * /home/user/quarterly_task.sh

# 현재 크론 작업 백업
$ crontab -l > backup_cron.txt

# 크론 작업 복원
$ crontab backup_cron.txt

# 매 30분마다 명령어 실행
*/30 * * * * /usr/bin/python3 /home/user/script.py

# 실행 결과를 파일로 저장
0 3 * * * /home/user/task.sh > /home/user/task.log 2>&1

# 매월 15일 오후 3시 특정 디렉터리 압축
0 15 15 * * tar -czf /home/user/archive.tar.gz /home/user/files

# 특정 시간 범위 내 매 시간 실행
0 6-18 * * * /home/user/daily_task.sh

# 스크립트를 통해 동적 크론 작업 추가
#!/bin/bash
echo "0 2 * * * /home/user/auto_task.sh" | crontab -

# 현재 사용자 크론 작업 제거
$ crontab -r
            

위의 예제는 crontab 명령어를 사용하여 스케줄링 작업을 설정하고 관리하는 다양한 방법을 보여줍니다.

© 2025 Linux 명령어 설명

Categories:

No responses yet

답글 남기기