shell脚本cron作业不工作

shell脚本cron作业不工作

我使用的是 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

你能帮我找出错误吗?

答案1

sqlite在脚本中指定完整路径。

相关内容