Python3 스크립트를 통해 CSV 파일에 일부 데이터를 쓰려고 합니다. CMD에서 직접 실행하면 제대로 작동하지만 crontab -e
cron을 통해(cron을 통해) 실행하면 작동하지 않습니다.
이제 파일에 대한 직접 경로(내 코드에서 상수 문자열로 하드코딩됨)가 필요하다는 것을 알았습니다.
그러나 나의 첫 번째 방법은 나를 혼란스럽게 한다. 명령을 실행 Path(os.getcwd()).joinpath('Data/test.csv')
하고 올바른 경로를 얻습니다 /home/pi/Documents/Project/Data/test.csv
. 하지만 cron을 통해 실행하면 경로는 /home/pi/Data/test.csv
.
프로젝트는 에 있습니다 /home/pi/Documents/Project/
. Path(os.getcwd()).joinpath('Data/test.csv')
cmd를 통한 직접 호출 대신 다른 경로가 반환되는 이유는 무엇입니까?
cron과 스크립트의 명령줄 호출에서 동일한 동작이 발생하는 경우 무엇을 변경할 수 있습니까?
편집하다
이것은 내 crontab 항목입니다.
00 9,15 * * * python3 /home/pi/Documents/Projects/temperatureCheck/temperatureCheck.py
답변1
crontab 명령 앞에 다음을 붙입니다.
cd /home/pi/Documents/Project && ...