bash - Shell 脚本未通过 crontab 运行,但手动运行良好

标签 bash shell

我有一个脚本可以检查 PPTP VPN 正在运行,如果没有,它会重新连接 PPTP VPN。当我手动运行脚本时,它执行得很好,但是当我创建一个 cron 作业时,它没有运行。

* * * * * /bin/bash /var/scripts/vpn-check.sh

这是脚本:

#!/bin/sh
/bin/ping -c3 192.168.17.27 > /tmp/pingreport
result=`grep "0 received" /tmp/pingreport`
truncresult="`echo "$result" | sed 's/^\(.................................\).*$$'`"
if [[ $truncresult == "3 packets transmitted, 0 received" ]]; then
/usr/sbin/pppd call home
fi

最佳答案

最后我找到了一个解决方案......而不是进入cronjob

crontab -e

我需要直接编辑crontab文件

nano /etc/crontab

添加例如类似

*/5 *     * * *   root  /bin/bash /var/scripts/vpn-check.sh

现在好了!

谢谢大家的帮助...希望我的解决方案也能帮助其他人。

关于bash - Shell 脚本未通过 crontab 运行,但手动运行良好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47448450/

相关文章:

shell - 我可以在某个地方使用 ssh,运行一些命令,然后给自己一个提示吗?

linux - bash 中预计会出现错误

linux - EC2 - 未找到 Codedeploy NPM 错误

linux - 给定两个目录树,如何仅考虑满足条件的文件名来查找哪些文件名相同?

bash - 停止 bash 回显命令文本

linux - 自动回答交互式 shell 提示(是/否)

linux - 监控重启程序脚本

bash - 从 bash 对文本文件中的段落进行排序

Golang 中的 Shell 扩展(命令替换)

node.js - 使用 Node.js,如何在子进程上执行多个命令并在每个命令后获取响应?