이 름
crontab − cron 처 리 를 위 한 테 이 블 파 일
설 명
crontab 파 일 에 담 길 내 용 을 cron(8) 데 몬 에 의 해 실 행 될 특 정 내 용 인 데 , 그 일 반 적 인 형 식 은 , ’’이 명 령 을 이 날 이 시 간 에 실 행 하 라 ’’ 식 이 다 . 각 사 용 자 는 자 신 의 crontab 파 일 을 사 용 할 수 있 으 며 , crontab 파 일 에 서 지 정 한 명 령 은 자 신 의 프 로 세 스 로 실 행 된 다 . 일 반 적 으 로 uucp, news 같 은 것 을 이 crontab 파 일 에 지 정 하 며 , su(1) 명 령 으 로 사 용 자 를 바 꾸 었 으 나 , 이 전 사 용 자 의 프 로 세 스 로 실 행 하 고 자 할 때 주 로 사 용 된 다 .
빈 줄 , 공 문 자 나 , 탭 문 자 로 시 작 하 는 줄 , 줄 첫 칸 에 ’#’ 문 자 가 있 는 줄 은 모 두 무 시 된 다 . 또 한 cron 명 령 이 지 정 되 어 있 는 줄 안 에 서 는 주 석 을 사 용 할 수 없 다 . 또 한 , 환 경 변 수 설 정 하 는 곳 에 는 이 주 석 문 을 사 용 할 수 없 다 .
cron 데 몬 에 서 처 리 될 각 줄 은 환 경 변 수 가 지 정 되 어 있 는 줄 이 나 , cron 명 령 이 지 정 되 어 있 는 줄 이 다 . 환 경 변 수 를 지 정 하 는 형 식 은 다 음 과 같 다 .
name = value
’=’ 문 자 사 이 에 있 는 공 백 문 자 는 선 택 적 이 다 . name 의 값 으 로 지 정 되 는 value 에 는 공 백 문 자 가 없 어 야 한 다 . value 값 에 공 백 문 자 가 있 을 경 우 에 는 따 움 표 (작 은 따 움 표 나 , 큰 따 움 표 , 짝 이 맞 아 야 함 )로 지 정 한 다 .
여 러 환 경 변 수 들 은 cron(8) 데 몬 에 의 해 자 동 으 로 지 정 된 다 . SHELL 값 은 /bin/sh, LOGNAME과 HOME 값 은 /etc/passwd 파 일 에 서 그 crontab 파 일 소 유 주 의 것 을 취 한 다 . HOME 값 과 SHELL 값 은 crontab 파 일 에 서 새 롭 게 지 정 될 수 도 있 지 만 , LOGNAME 값 은 바 꿀 수 없 다 .
(참 고 : LOGNAME 변 수 는 BSD 시 스 템 에 는 USER 라 는 이 름 으 로 사 용 된 다 . 이 때 는 USER 변 수 에 그 값 이 지 정 된 다 .)
LOGNAME, HOME, SHELL 변 수 값 들 은 , cron(8) 데 몬 에 의 해 서 , crontab에 서 지 정 한 한 명 령 의 실 행 결 과 를 MAILTO 명 령 을 사 용 할 때 , 사 용 된 다 . MAILTO 명 령 이 지 정 되 면 (즉 , 비 어 있 어 않 으 면 ), 이 변 수 값 들 을 이 용 해 서 , 그 사 용 자 에 게 편 지 를 보 낼 것 이 며 , MAILTO 명 령 이 지 정 되 어 있 지 않 으 면 (MAILTO=""), 편 지 를 보 내 지 않 는 다 . 한 편 , 윗 변 수 들 을 따 로 지 정 하 지 않 았 다 면 , 그 crontab 파 일 의 소 유 주 에 게 편 지 가 보 내 진 다 . 이 기 능 은 편 지 를 보 내 는 풀 그 림 으 로 /usr/lib/sendmail 대 신 에 , /bin/mail 명 령 을 사 용 할 경 우 에 유 용 한 데 , /bin/mail 명 령 은 aliasing(편 지 받 는 이 의 주 소 를 별 칭 으 로 사 용 하 는 기 능 ) 하 지 않 고 , uucp 명 령 은 일 반 적 으 로 그 편 지 를 읽 지 않 기 때 문 이 다 . (무 슨 말 인 지 .. ^^)
cron 명 령 의 형 식 은 V7 표 준 과 비 슷 하 다 . 각 줄 은 다 섯 개 의 시 간 과 날 짜 필 드 , 다 음 에 , 사 용 자 이 름 (시 스 템 crontab 파 일 일 경 우 ), 다 음 에 , 실 행 될 명 령 이 런 형 식 이 다 . 지 정 한 명 령 은 데 몬 에 의 해 , 지 정 한 날 짜 , 시 간 에 실 행 된 다 .(아 래 설 명 참 조 ) cron(8) 데 몬 은 매 분 단 위 로 그 시 간 을 확 인 한 다 . 시 간 과 날 짜 필 드 는 다 음 값 이 사 용 된 다 .
필 드 |
사 용 할 수 있 는 값 | |
----- |
----------------- | |
분 |
0-59 | |
시 |
0-23 | |
날 짜 |
0-31 | |
달 |
0-12 (아 래 참 조 , 달 이 름 을 사 용 가 능 ) | |
요 일 |
0-7 (0 또 는 7: 일 요 일 , 요 일 이 름 을 사 용 가 능 ) |
한 필 드 에 ’*’ 문 자 가 올 수 있 는 데 , 이 것 은 그 단 위 전 체 를 말 한 다 . (예 를 들 어 , 날 짜 부 분 에 ’*’ 문 자 가 오 면 ’매 일 ’을 뜻 한 다 )
숫 자 의 범 위 가 사 용 될 수 있 다 . 범 위 는 하 이 픈 (’-’) 문 자 로 지 정 하 며 , 앞 에 숫 자 가 뒷 숫 자 보 다 작 아 야 한 다 . 예 를 들 어 , 시 간 필 드 에 ’’8-11’’ 이 오 면 , 8, 9, 10, 11시 를 뜻 한 다 .
또 한 이 값 들 은 나 열 될 수 있 으 며 , 그 구 분 은 쉼 표 (’,’)로 한 다 . 예 : ’’1,2,5,9’’, ’’0-4,8-12’’.
값 의 범 위 를 지 정 할 때 , 특 정 단 위 로 건 너 뛸 수 있 는 데 , 이 것 은 그 범 위 다 음 에 ’’/<숫 자 >’’ 형 식 으 로 덧 붙 혀 준 다 . 예 를 들 어 , 시 간 필 드 에 ’’0-23/2’’ 값 이 사 용 되 면 , 이 것 은 두 시 간 마 다 , 즉 ’’0,2,4,6,8,10,12,14,16,18,20,22’’ 시 를 뜻 한 다 . 또 한 ’’매 두 시 간 마 다 ’’라 는 뜻 으 로 , ’’*/2’’ 이 런 식 으 로 사 용 될 수 있 다 .
’’달 ’’과 ’’요 일 ’’ 필 드 에 는 그 달 의 이 름 과 , 요 일 의 이 름 이 사 용 될 수 있 다 . 이 이 름 의 앞 에 서 부 터 세 글 자 정 도 만 구 별 되 면 된 다 . 이 이 름 을 사 용 할 때 는 범 위 가 지 정 될 수 없 다 .
여 섯 번 째 필 드 (줄 의 마 지 막 )에 는 실 행 시 킬 명 령 이 온 다 . 그 명 령 이 실 행 될 때 줄 을 나 누 는 것 은 ’%’ 문 자 로 하 며 , 즉 , 이 것 은 쉘 에 의 해 서 다 른 명 령 이 실 행 됨 을 의 미 한 다 . (’%’ 문 자 앞 에 있 는 것 이 하 나 의 쉘 명 령 이 며 , 뒤 에 있 는 것 이 또 다 른 하 나 의 쉘 명 령 임 을 뜻 한 다 .) 또 한 한 명 령 인 데 , 부 득 이 하 게 줄 을 나 누 워 야 할 경 우 에 는 백 슬 래 쉬 (\) 문 자 를 사 용 한 다 .
참
고 : 날 짜 와 요 일
의 지 정 에 서 중
복 되 는 경 우 는 ,
그 것 이 모 두 포
함 된 다 . 예 를 들
어 ,
’’30 4 1,15 * 5’’ 이 것
은 매 달 1일 , 15일 날
4시 30분 에 실 행 되
면 서 , 또 한 매 주
금 요 일 날 도 함
께 실 행 됨 을 의
미 한 다 .
crontab 파 일 예 제
# 명
령 어 를 실 행 쉘
지 정
SHELL=/bin/sh
# 편 지 를 받 을 사
용 자 지 정
MAILTO=paul
#
# 매 일 00시 05분 에 특
정 작 업 을 하 는
경 우
5 0 * * * $HOME/bin/daily.job >> $HOME/tmp/out
2>&1
# 매 달 1일 오 후 2시
15분 에
15 14 1 * * $HOME/bin/monthly
# 월 요 일 부 터 금
요 일 까 지 매 일
오 후 10시 에 .
0 22 * * 1-5 |
mail -s "It’s 10pm" joe%Joe,%%Where are your kids?% |
23 0-23/2 * * * echo
"이 것 은 매 일 0, 2, 4,
... 시 23분 에 보 여 집
니 다 ."
5 4 * * sun echo "이 것 은 매
일 요 일 오 전 4시
5분 에 보 여 집 니
다 ."
관 련 항 목
확 장
요 일 을 지 정 할 때 , 0, 7 숫 자 둘 다 , 일 요 일 을 뜻 한 다 . 이 것 은 BSD, ATT 에 서 다 르 게 적 용 되 기 에 사 용 되 었 음 .
값 나 열 을 하 는 방 식 , "1-3,7-9" 형 식 의 값 은 ATT, BSD cron에 서 바 르 게 동 작 하 지 않 음 - 여 기 서 는 "1-3", 또 는 "7,8,9" 값 만 적 용 됨 .
건 너 뜀 기 능 사 용 가 능 , "1-9/2" = "1,3,5,7,9".
달 이 름 과 요 일 이 름 을 사 용 가 능 .
환 경 변 수 지 정 가 능 . BSD, ATT에 서 는 /etc/rc에 바 탕 으 로 한 하 위 프 로 세 스 에 서 만 지 정 이 가 능 함 .
편 지 보 기 기 능 가 능 (BSD에 서 는 이 런 기 능 없 음 ), 또 한 다 른 특 정 사 용 자 에 게 편 지 를 보 낼 수 있 음 (SysV에 서 는 이 런 기 능 없 음 ), 또 한 편 지 기 능 보 내 기 사 용 하 지 않 을 수 도 있 음 (SysV에 서 는 이 런 기 능 없 음 ).
만 든 이
Paul Vixie <paul [AT] vix.com>