2013-07-25 38 views
0

我想用這個例子腳本在Python測試的crontab:crontab的錯誤:Windows無法找到指定的文件

from crontab import CronTab 

tab = CronTab(user='www',fake_tab='True') 
cmd = '/var/www/pjr-env/bin/python /var/www/PRJ/job.py' 
cron_job = tab.new(cmd) 
cron_job.minute().every(5) 
#writes content to crontab 
tab.write() 
print tab.render() 

它返回「fake_tab」錯誤沒有定義。如果我刪除此參數並調用功能
像這樣:CronTab(user ='www')。我會返回以下錯誤:

Traceback (most recent call last): 
File "<pyshell#8>", line 1, in <module> 
tab = CronTab(user='www') 
File "C:\Python27\lib\site-packages\crontab.py", line 160, in __init__ 
self.read(tabfile) 
File "C:\Python27\lib\site-packages\crontab.py", line 183, in read 
p = sp.Popen(self._read_execute(), stdout=sp.PIPE) 
File "C:\Python27\lib\subprocess.py", line 711, in __init__ 
errread, errwrite) 
File "C:\Python27\lib\subprocess.py", line 948, in _execute_child 
startupinfo) 
WindowsError: [Error 2] The system cannot find the file specified 

是否有人知道,我錯過了什麼?

+1

crontab在Windows上工作嗎?從模塊的頁面我們可以看到它與Windows不兼容。 https://pypi.python.org/pypi/python-crontab/ – Darek

+0

它說windows只支持手動cron。 bw我們只是在windows上測試它。我們的實際文件在Linux服務器上。根據'https://pypi.python.org/pypi/python-crontab/'輸入 –

+1

,crontab僅適用於linux。 在結束檢查平臺.. – abhishekgarg

回答

1

我認爲Crontab是一個Unix/Linux的概念。不知道它是否可以在windows下工作。這Page說「Windows支持只適用於手動crontabs」。不知道他是什麼意思。

+0

是啊,不明白這個手冊的事情。但讓我在linux上測試它。 –

0

作爲python-crontab的作者,我可以報告文檔已更新。鑑於人們對什麼手動方式感到困惑,這顯然是無效的。

如果你這樣做:

mem_cron = CronTab(tab=""" 
    * * * * * command # comment 
""") 

你應該有一個內存僅crontab中。同樣的,如果你做一個文件作爲一個crontab:

file_cron = CronTab(tabfile='filename.tab') 

我一直在尋找提高代碼和文檔,所以請不要給我發電子郵件。

0

我發現做crontab覺得我的工作最簡單的方法是:

settings.py(我使用Django)我定義這些變量:

CRONTAB_EXECUTABLE='C:/Users/myuser/myvirtualenv/Lib/site-packages/django_crontab/crontab.py' 
CRONTAB_DJANGO_PROJECT_NAME='myproject' 
CRONTAB_DJANGO_MANAGE_PATH='C:/Users/myuser/myvirtualenv/myproject/manage.py' 
CRONTAB_PYTHON_EXECUTABLE='C:/Users/myuser/AppData/Local/Programs/Python/Python36-32/pythonw.exe' 

,請注意斜線。它必須靠右或者會導致語法錯誤。

通過這種方式crontab將找到工作或任何你想要執行。在我的情況下,我試圖:

C:\Users\bsi\mlearning3\src>python manage.py crontab add 
相關問題