728x90
300x250
요즘 AWS EC2에 Maria DB를 설치하여 기상데이터를 계속해서 받아오는 중입니다.
매번 모듈을 실행시킬수는 없어서 주기적으로 모듈을 실행시켜주는 방법을 찾아봤습니다.
많은 분들이 Crontab이 간단하여 사용하기 편하다고 하셔서 사용방법을 숙지하고자 작성합니다.
Cron은 Unix계열 OS에서 사용할 수 있는 잡 스케줄러입니다.
Cron을 이용하면 되게 간단하고 편하게 모듈을 자동으로 실행할 수 있습니다.
1. 터미널에서 Crontab -e 를 입력하면 Vi편집기가 뜨게됩니다.
crontab -e
2. 수정 모드인 i키를 누르고 다음과 같이 명령어를 입력합니다.
* * * * * python3 /home/ec2-user/db/db_data.py
# 시간 설정, 파이썬 절대경로, 실행할 모듈 절대경로
# 파이썬의 절대 경로는 which python3 로 찾을 수 있습니다.
3. 여기서 * * * * *가 시간을 설정하는 부분인데 자세히 알아보겠습니다.
* * * * *
분(0-59) 시간(0-23) 일(1-31) 월(1-12) 요일(0-7)
* * * * * = 매 분마다 실행
0 * * * * = 매 시간 0분(정각)마다 실행
0 */3 * * * * = 3시간마다 0분(정각)마다 실행
40 6 * * 1 = 매주 월요일 오전 6시 40분마다 실행
0,20,40 * * * * = 매 시간 0분, 20분, 40분마다 실행
10-40 6 * * * = 매일 오전 6시 10분부터 40분까지 매 분마다 실행
4. crontab -l 로 예약된 작업들을 확인할 수 있습니다.
crontab -l
5. 만약 로그를 절대 경로에 기록하고 싶으면 아래를 따라서 하시면 됩니다.
* * * * * python3 /home/ec2-user/db/db_data.py >> /User/'name'/Desktop/test.log 2>&1
# 뒤에 있는 부분이 로그파일의 절대경로입니다
# >> 2개는 누적하여 기록
# > 1개는 기존 파일에 덮어쓰기 즉, 갱신입니다.
# log파일은 vi편집기나 cat으로 확인하실 수 있습니다.
6. 시간 설정을 한 후에 정상적으로 작동되는지 확인하면 끝입니다.
728x90
300x250
'Python' 카테고리의 다른 글
파이썬-실습(2) EC2에 Docker로 Nginx를 설치하자 (0) | 2021.11.22 |
---|---|
파이썬-실습(1) 카카오톡 날씨 알림 프로젝트 (0) | 2021.11.21 |
Flask와 Django를 비교 (0) | 2021.11.17 |
HTML에서 받은 입력값을 DB로 보내기 (0) | 2021.10.18 |
파일 업로드, 다운로드, 삭제(Flask) (0) | 2021.10.18 |