簡體   English   中英

Crontab不適用於python

[英]Crontab not working for python

我試圖設置一個cron任務,以每天在特定時間運行python腳本。 這是我的crontab -e

53 16 * * * python /code/4dlife/pythonscript.py

我將其設置為16:52,然后等待並觀看,但終端上什么也沒有出現。 我檢查了nano CRON /var/log/syslog但是它是空的。

我究竟做錯了什么? 我可以在打開腳本的同一終端上看到腳本嗎? 如果沒有,我還能在哪里看到輸出? 但是首先,我需要使其工作。

注意:

  1. 我的python腳本之上有#!/usr/bin/env python
  2. 我在安裝了linux的虛擬盒子上運行它。

您的腳本在終端中是否可以正常工作? 我的意思是,當您鍵入:

python /code/4dlife/pythonscript.py

結果出現了嗎?

我曾經在cron中遇到過Python問題,但是當我開始使用virtualenv / virtualenvwrapper + pyenv時,這些問題就解決了。

從他們開始,我就使用cron使用Python的完整路徑運行命令,例如

53 16 * * * /usr/bin/python /code/4dlife/pythonscript.py

要獲取完整路徑,請在外殼中運行

$ which python

並使用我顯示的路徑。

區別在於,就我而言,Python二進制文件位於特定的文件夾( ~/.virtualenv/<env-name>/bin/python )中。

在crontab中使用python可執行文件的確切路徑:

     53 16 * * * /usr/bin/python /code/4dlife/pythonscript.py

這樣,您可以確定您的crontab知道在哪里可以找到python。

調試自動運行的腳本的一種方法是寫入syslog:

    import syslog

    syslog.syslog(syslog.LOG_ERR, "---SCRIPT START---")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM