문제
cron을 이용해서 해당 스크립트를 매월 1일 오전 4시 2분에 주기적으로 실행하려고 한다. (괄호) 안에 들어갈 내용으로 알맞은 것은?
① 4 2 * * 1 ② 2 4 * * 1 ③ 4 2 1 * * ④ 2 4 1 * *
정답
4번
해설
정답: 4. crontab 필드는 "분 시 일 월 요일" 순서다. 오전 4시 2분은 분=2, 시=4 이고, 매월 1일은 일=1, 월·요일은 매번(*)이다. 따라서 "2 4 1 * *" 가 맞다.
오답 풀이
- 1번: "4 2 * * 1" 은 분=4, 시=2, 요일=1(월요일)로 해석되어 시각·날짜가 모두 다르다.
- 2번: "2 4 * * 1" 은 분 2·시 4 는 맞지만 '일' 이 아니라 요일 1(월요일)로 지정되어 '매월 1일' 조건과 다르다.
- 3번: "4 2 1 * *" 는 분=4, 시=2 로 해석되어 오전 4시 2분이 아니다.
- 4번: 분 2, 시 4, 일 1, 월 *, 요일 * 로 매월 1일 오전 4시 2분을 정확히 만족해 옳다.
보충 개념 cron 필드 순서: 분(0-59) 시(0-23) 일(1-31) 월(1-12) 요일(0-7, 0·7=일). '매월 1일' 은 일 필드에 1, '매주 월요일' 은 요일 필드에 1 을 넣는 점을 구분해야 한다.