상황: 파이썬 파일을 crontab으로 돌리려고 함.
오류 메시지: 1: Syntax error: word unexpected (expecting ")")
crontab
테스트를 위해 다음과 같은 파이썬 파일을 작성했다.
print("Hello, world!")
crontab -e
에는 이렇게 작성했다.
* * * * * /home/유저명/helloworld.py 2>&1 | tee logfile.txt
그리고 유저명@bot-server:~$ sudo cat logfile.txt
/bin/sh: 1: /home/nm1vw2/helloworld.py: Permission denied
권한이 없다고 하길래 권한도 줬다.
chmod 766 helloworld.py
이렇게 했는데 놀랍게도 안 된다. 로그파일을 열어보자.
1: Syntax error: word unexpected (expecting ")")
해결책: 파이썬에서 실행해야 하는데 crontab에 파이썬이라는 말을 안 써 줬다. 다음과 같이 수정한다.
* * * * * /usr/bin/python3 /home/유저명/helloworld.py 2>&1 | tee logfile.txt
앞부분엔 파이썬 경로가 들어가야 하는데 which python3
을 하면 경로가 나온다.
캄사합니다...