我有以下脚本:
#!/bin/bash
jettyPid=`pgrep -f solr`
if [ "$jettyPid" == "" ]
then
/etc/init.d/jetty start &
fi
如果执行:
./script.sh.
问题是如果我把它放在 cron 作业上,Jetty 不会启动,但是它会记录到我的日志文件中:
Starting Jetty: STARTED Jetty Fri Jun…
我不明白为什么会这样。
最佳答案
尝试在您的 cronjob 文件中设置 PATH
就我而言,
echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
在您的 crontab 中添加路径:crontab -e
PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
30 5 * * * runmyscript
可以查看this question了解更多详情。
关于linux - 通过 Crontab 的 Shell 脚本 - 启动 Jetty,手动工作正常,但不能通过 crontab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24197327/