2014-11-06 107 views
1

我試圖通過我的Raspberry Pi上的crontab運行腳本。Raspberry Pi/ImageMagick:通過Crontab截圖

我已經創建的腳本:ScreenShot.sh

文件的內容是:

#!/bin/sh 
export DISPLAY=:0 && \ 
    import -window root -resize 20% /pathtofolder/screenshot.jpg 

這工作得很好,當我通過SSH

/home/pi/ScreenShot.sh 

我所做的腳本運行可執行文件。

我加入它通過sudo crontab -e

*/1 * * * * /home/pi/ScreenShot.sh 

我希望腳本運行過1分鐘和cron(我將在後面擴展這個,但是出於測試目的,我把它在1分鐘)。

由於某些原因,腳本不能在crontab中運行,也不會截取屏幕截圖。

我注意到,如果我跑通過sudo腳本:

sudo /home/pi/ScreenShot.sh 

我得到以下錯誤:

No protocol specified 
import.im6: unable to open X server `:0' @ error/import.c/ImportImageCommand/368. 

我假設crontab的運行時,它運行的腳本作爲根,這可能會導致失敗。

我上啓用的crontab記錄,如果我查看日誌我看到以下內容:

Nov 6 06:26:01 IRDigitalDisplay /USR/SBIN/CRON[12634]: (root) CMD (/home/pi/ScreenShot.sh) 
Nov 6 06:26:02 IRDigitalDisplay /USR/SBIN/CRON[12633]: (CRON) info (No MTA installed, discarding output 

所以我假設出了問題。但是它不是寫錯誤日誌,而是試圖通過電子郵件發送給我.....

我的問題是:

  • 我如何得到我的ImageMagick的腳本運行crontab,取每隔X分鐘拍攝一次屏幕截圖,並將其保存到預定的文件夾中?
+0

您好,我想通了,你需要運行的crontab工作作爲丕用戶:*/5 * * * *須藤-u PI /家/ PI /ScreenShot.sh – 2014-11-06 10:26:50

回答

1

您需要將腳本添加到「pi」用戶crontab,而不是root的。開始使用此命令的crontab edior爲用戶 「PI」:

crontab -e 

沒有sudo需要。

crontab條目必須是:

*/5 * * * * /home/pi/ScreenShot.sh