我的學校總是希望我們為講座和實踐下載 pptx 和 docx,我討厭在閱讀完成后總是需要手動洗掉它。因此,我創建了一個腳本,該腳本會破壞檔案夾中的所有內容,并希望 crontab 將其安排為每小時運行一次。
當我通過終端手動運行此代碼時,一切正常。
def remove_trash():
import os
dir_path = os.path.dirname(os.path.realpath(__file__))
filename = os.path.join(dir_path, "trash_script.py")
with open(filename, "r") as f:
_ = f.read()
os.system(f"rm -df {dir_path}/* && touch {filename}")
with open(filename, "w") as f:
f.write(_)
if __name__ == "__main__":
remove_trash()
但是當我在我的 crontab 中添加這個時,
0 * * * * python ~/Desktop/Projects/script/Trash/trash_script.py
我嘗試授予檔案執行權限,但它仍然不會每分鐘運行一次 0。
chmod x trash_script.py
uj5u.com熱心網友回復:
我建議先將您的腳本移動到 bash 腳本中,然后添加一些日志來查找問題。bash 腳本如下所示:
trash.sh
cd ~/Desktop/Projects/script/Trash
python trash_script.py
更改腳本的執行權限
chmod x trash.sh
將您的 cron 作業修改為如下所示:
0 * * * * sh <path_to_bash_script>/trash.sh >> ~/Desktop/Projects/script/Trash/trash.log 2>&1
這將有助于每次腳本運行時都有一些輸出。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/385752.html
