Cron Tab 생성기
리눅스 스케줄러 설정을 쉽게 생성하세요
프리셋
Cron 설정
생성된 Cron 표현식
* * * * * 📋 매일 매시간 매분 실행됩니다
실행 예제
🔹 쉘 스크립트 실행
# crontab -e
* * * * * /home/user/backup.sh >> /var/log/backup.log 2>&1
# 스크립트 실행 후 표준 출력과 에러를 로그 파일에 추가
🔹 특정 URL 접근 (curl)
# API 호출 예제
* * * * * curl -X GET "https://api.example.com/healthcheck" >> /var/log/healthcheck.log 2>&1
* * * * * curl -X POST "https://api.example.com/cron" -H "Content-Type: application/json" -d '{"task":"daily"}'
🔹 파일 다운로드 (wget)
* * * * * wget -q -O /tmp/data.json https://api.example.com/data.json
# -q: 조용한 모드, -O: 출력 파일 지정
🔹 로그 남기기 방법
# 1. 표준 출력만 로그에 저장
* * * * * /path/to/script.sh >> /var/log/script.log
# 2. 표준 출력 + 에러 모두 저장
* * * * * /path/to/script.sh >> /var/log/script.log 2>&1
# 3. 타임스탬프와 함께 로그 저장
* * * * * echo "$(date '+\%Y-\%m-\%d \%H:\%M:\%S') - Starting" >> /var/log/script.log && /path/to/script.sh >> /var/log/script.log 2>&1
# 4. 로그 로테이션 (logrotate 사용 권장)
# /etc/logrotate.d/mycron 파일 생성
/var/log/script.log {
daily
rotate 7
compress
missingok
notifempty
}
🔹 환경 변수 설정
# crontab 최상단에 환경 변수 정의
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=admin@example.com
* * * * * /path/to/script.sh
Cron 표현식 가이드
• * : 모든 값 (매분, 매시, 매일 등)
• */5 : 5분마다, 5시간마다 등
• 0-30 : 범위 지정 (0분부터 30분까지)
• 1,15,30 : 특정 값 지정 (1일, 15일, 30일)
• 요일 : 0=일요일, 1=월요일, ..., 6=토요일
예시
• 0 9 * * 1-5 : 평일 오전 9시
• */30 * * * * : 30분마다
• 0 0 1 * * : 매월 1일 자정