2016-08-24 72 views
0

我寫了一個script.py,它打開一個tk窗口並在窗口包含的畫布上用烏龜繪製。我想通過使用砰砰來啓動這個腳本:通過plink在樹莓上啓動一個Python腳本

plink.exe -pw raspberry [email protected] python /home/pi/script.py 

但我總是收到一個錯誤:

script.py line 32, in <module> root = Tk() 
no display name and no $DISPLAY environment variable 

我覺得同樣的錯誤導致了的crontab不執行script.py

我在crontab條目:

*/1 * * * * python /home/pi/script.py 

的語法應該是正確的,因爲其他腳本工作,如果我在CMD把python /home/pi/script.py手動一切都很好。 script.py得到執行。我該如何解決這個問題並讓crontab執行script.py?爲什麼我不能通過plink執行script.py

回答

2

看看你所得到的錯誤消息:

no display name and no $DISPLAY environment variable

您正試圖運行一些需要X11顯示,它不會提供從cron的範圍內(可能不是通過砰砰除非您在本地運行X11顯示服務器已啓用X11轉發)。

通常情況下,如果您有需要訪問顯示器的內容,您需要在現有桌面會話中運行它。有辦法解決這個問題。關於該主題的看到了一些想法:

+0

非常感謝!解決方法是: '*/1 * * * * DISPLAY =:0 python/home/pi/script.py' 我不知道爲什麼我沒有找到它.... – Kazulka