코딩항해기
[Linux] 크론탭 CronTab 본문

crontab -e : Crontab 파일 편집기 열기
crontab -l : 현재 등록된 Cron 작업 확인
crontab -r : 현재 등록된 모든 Cron 작업 제거
Cron 구문 작성 규칙
Crontab 파일에 작업 스케줄을 등록할 때는 아래와 같은 다섯 자리 시간 필드와 실행할 명령어 순서로 작성해야 합니다.
| 순서 | 필드 | 허용 값 | 설명 |
| 1 | 분 (Minute) | 0 - 59 | 몇 분에 실행할지 |
| 2 | 시 (Hour) | 0 - 23 | 몇 시에 실행할지 (24시간제) |
| 3 | 일 (Day of Month) | 1 - 31 | 매월 며칠에 실행할지 |
| 4 | 월 (Month) | 1 - 12 | 몇 월에 실행할지 |
| 5 | 요일 (Day of Week) | 0 - 7 | 요일에 실행할지 (0 또는 7=일요일, 1=월요일, ..., 6=토요일) |
| 6 | 명령어 | 모든 쉘 명령어 | 실제로 실행할 명령어 또는 스크립트 |
Crontab 시간 설정 예시
시간 필드에서는 특정 값 외에도 다양한 기호를 사용하여 반복을 설정할 수 있습니다.
| 기호 | 의미 | 예시 | 설명 |
| * | 모든 값 | * * * * * | 매 분, 매 시, 매일 실행 (1분마다) |
| , | 쉼표 (목록) | 0 10 * * 1,3,5 | 매주 월, 수, 금요일 오전 10시 0분에 실행 |
| - | 하이픈 (범위) | 0 10 * * 1-5 | 월요일부터 금요일까지 오전 10시 0분에 실행 |
| / | 슬래시 (간격) | */15 * * * * | 15분 간격(0, 15, 30, 45분)으로 실행 |
주요 예제
| 스케줄 구문 | 설명 |
| 0 3 * * * /bin/bash /path/to/backup.sh | 매일 새벽 3시 0분에 backup.sh 스크립트 실행 |
| */10 * * * * /usr/bin/logger "10분마다 실행" | 10분마다 로그 기록 (10분, 20분, 30분...) |
| 0 0 1 * * /path/to/monthly_report.sh | 매월 1일 0시 0분에 월별 보고서 스크립트 실행 |
특수 문자열 (Special Strings)
자주 사용하는 스케줄 패턴은 짧은 문자열로 대체하여 사용할 수 있습니다.
| 문자열 | 구문과 동일 | 설명 |
| @hourly | 0 * * * * | 매 시 정각 |
| @daily | 0 0 * * * | 매일 자정 (새벽 0시 0분) |
| @weekly | 0 0 * * 0 | 매주 일요일 자정 |
| @monthly | 0 0 1 * * | 매월 1일 자정 |
| @annually | 0 0 1 1 * | 매년 1월 1일 자정 |
| @reboot | 시스템 재부팅 시 한 번 실행 |
'Linux' 카테고리의 다른 글
| [Linux](URL) 우분투 부팅 USB 만들기 (0) | 2026.01.14 |
|---|---|
| [Linux/우분투] Docker 설치 (0) | 2025.04.10 |
| [Linux/우분투] 공장초기화 (0) | 2025.04.10 |