[Linux] cron 사용방법

2019. 9. 20. 14:38DEV SYSTEM/OS

cron 작업 설정 방법

1. /etc/crontab 직접 설정

2. 사용자별 cron 설정

 

 

# crontab -l : 현재 사용자가 등록하여 돌아가고 있는 작업 확인

# crontab -e : 사용자(별) crontab 편집하기

(crontab = 크론 계획표)

 

로그확인 : /var/log cron* 파일들.

 

 

/etc/cron.d 아래에 cron.daily, cron.hourly, cron.monthly, cron.weekly 설정이 있음.

 -> 몇시, 몇분에 각각의 cron 실행될것인지 설정되어 있기때문에 4가지의 cron디렉토리 안에 있는 파일들은 따로 시간설정 X

 

 

*crontab 파일 형식

############################################################################################
# ------    --------  —————————————————————————
# 필  드    의  미    범  위
# ------    --------  —————————————————————————
# 첫번째    분        0-59
# 두번째    시        0-23
# 세번째    일        0-31
# 네번째    월        1-12
# 다섯번째  요일      0-7 (0 또는 7=일요일, 1=월, 2=화,...)
# 여섯번째  명령어    실행할 명령을 한줄로 쓴다.
#------    --------  —————————————————————————
# ex) 0 0 1 * * /home/scripts/iptables.sh
############################################################################################

 

 

ex)

0 0분에, /home/skycoding_test 있는 확장자가 .c 파일들을 모두 /home/skycoding_test/Code_bak 으로 옮긴다.

 

1. [crontab 설정]

### 분(0-59) 시(0-23) 일(0-31) 월(1-12) 요일(0-7) 명령어 ###

 0 0 * * * /home/skycoding_test/Code_Backup.sh

    => 0 0 * * * ( //요일)마다 /home/skycoding_test 있는 Code_Backup.sh 실행하겠다!

 

 

2. [Code_Backup.sh 내용]

 # mv /home/skycoding_test/*.c /home/skycoding_test/Code_bak

   => /home/skycoding_test 확장자 .c 파일들을 /home/skycoding_test/Code_bak 으로 옮긴다.