nano 파일명.sh
를 입력하면 'nano'라는 텍스트 편집기가 열리고 파일명.sh라는 이름의 새로운 파일이 열리고 내용을 편집할 수 있다.
##파이썬 가상환경 활성화
source /~~가상환경이 있는 경로/venv/bin/activate
##실행시킬 파이썬 파일 넣기
python /~~파이썬파일이 있는 경로/파이썬파일이름.py
##가상환경 비활성화
deactivate
편집을 완료했으면 '^+X'를 누르고 'Y'를 누르고 엔터를 눌러 변경사항을 저장하면 된다.
sh파일을 생성했으면 크론탭에 sh파일을 원하는 주기를 같이 넣어 올려줄 것이다.
crontab -e
를 터미널에 입력해 크론탭을 편집한다.
1분마다 파일명.sh를 실행시키고 싶다면
* * * * * source /sh파일이 있는 경로/파일명.sh > /로그를 저장할 경로/cronlog.txt 2>&1
로 크론탭에 등록해주면 된다.
이 'source'가 정말 중요한데 어떠한 스크립트를 실행시키고 싶다면 앞에 source를 붙여야 한다.
실행이 정상적으로 된다면 cronlog.txt에 결과가 찍힐 것이다.
실행이 정상적으로 되지 않는다면 크론탭 파일에
SHELL=/bin/bash
* * * * * source /sh파일이 있는 경로/파일명.sh > /로그를 저장할 경로/cronlog.txt 2>&1
SHELL=/bin/bash 이 한 줄을 추가해보면 나같은 경우에는 실행이 됐다.
SHELL=/bin/bash을 추가하는 이유는 크론탭이 실행될 때 사용할 기본 쉘을 지정하기 위해서인데 운이 좋으면 이 코드가 없어도 실행이 될 수도 있는데 운이 나쁘다면 기본 쉘을 찾지 못해 실행이 안 될 가능성이 있다고 한다. 웬만하면 SHELL=/bin/bash 이 코드를 꼭 추가해주자!
크론탭으로 시간 지정할 게 아니면 ./파일명.sh 만 해도 sh 파일이 실행이 될 것이다!
./파일명.sh