Cron

shell腳本cron作業不工作

  • March 15, 2017

我在 FreeBSD11 上。我有一個 shell 腳本程式碼作為 cron 作業,用於檢查 zfs 池狀態並將其保存在 sqlite 數據庫中。當我從終端執行它時,它可以正常工作,但在 crontab 中它不起作用。crontab:

#
SHELL=/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/etc/myjob/pool
#
#minute hour    mday    month   wday    who     command
#

*/1    *     *    *   *   root  /usr/local/etc/myjob/pool/pool.sh

我的腳本是:

#!/bin/sh
pool=$(/sbin/zpool status | grep pool |awk '{print $2}')
for i in $pool
do
   status=$(/sbin/zpool status ${i} |grep state|awk '{print $2}')


   echo 'update mytbl set status =  '\'''$status''\'';'|sqlite3  /usr/local/var/db/myproject/myDataBase.db

done

你能幫我找出錯誤嗎?

sqlite在腳本中指定完整路徑。

引用自:https://unix.stackexchange.com/questions/351549