cron은 특정 시간에 특정 작업을 수행하게 하는 시스템 대몬입니다. 주기적으로 어떤 작업을 해야할 때 유용합니다.
crontab은 시간과 작업을 적은 텍스트 파일입니다. 사용자별로 파일이 존재합니다. cron은 모든 사용자의 crontab 파일을 찾아서, 적혀진 일정대로 작업을 수행합니다.
예약 작업 목록을 보고 싶다면 다음과 같이 명령합니다.
$ crontab -l
사용자의 crontab 파일의 내용이 출력됩니다.
예약 작업을 모두 삭제하고 싶다면 다음과 같이 명령합니다.
$ crontab -r
예약 작업을 만들거나 수정하고 싶다면 다음과 같이 명령합니다.
$ crontab -e
crontab 파일이 없다면 새로 만들고, 있다면 그 파일을 엽니다.
작업을 추가하는 형식은 다음과 같습니다.
minute hour day month weekday command
minute : 0 - 59
hour : 0 - 23
day : 1 - 31
month : 1 - 12
weekday : 0 - 6 (0 : 일요일)
command : 수행하려는 작업 명령어
*는 범위 내의 모든 값입니다.
예를 들어 minute의 값으로 *가 있다면 매분, hour의 값으로 *가 있다면 매시간을 뜻합니다.
쉼표로 구분된 숫자는 각각의 값입니다.
예를 들어 minute의 값으로 10,20이 있다면 10분과 20분을 뜻합니다.
-기호로 연결된 숫자는 범위입니다.
예를 들어 hour의 값으로 2-10이 있다면 2시부터 10시까지를 뜻합니다.
minute의 값으로 */10이 있다면 10분마다, hour의 값으로 */6이 있다면 6시간마다를 뜻합니다.
# 매분, 매시간, 매일, 매월, 매요일, 즉 1분마다 /root/backup.sh를 실행하시오.
* * * * * /root/backup.sh
# 0분, 4시, 매일, 매월, 매요일, 즉 매일 4시에 /root/backup.sh를 실행하시오.
0 4 * * * /root/backup.sh
# 0분, 4시, 매일, 매월, 월요일부터 금요일, 즉 평일 4시에 /root/backup.sh를 실행하시오.
0 4 * * 1-5 /root/backup.sh
# 10분 간격, 4시, 매일, 매월, 매요일, 즉 매일 4시, 4시 10분, 4시 20분, 4시 30분, 4시 40분, 4시 50분에 /root/backup.sh를 실행하시오.
*/10 4 * * * /root/backup.sh
자세한 예시 감사합니다 👍