我使用的是 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
在脚本中指定完整路径。