[英]shell script not running the other script inside it
#!/bin/bash
value=$(</var/www/sym_monitor/man.txt)
if [ "$value" == "true" ]; then
ps -ef|grep sym |grep -v grep |awk '{ print $2 }'|sudo xargs kill -9;
cd /var/www/symmetric-ds-3.1.6/bin;
sleep 30;
(sudo ./sym --port 8082 --server);
fi
我正在尝试使用cron每10分钟运行一次以上脚本。 在根目录下手动运行脚本时,脚本运行良好,但是当我尝试在cron中运行脚本时,脚本正在执行(ps -ef | grep sym | grep -v grep | awk'{print $ 2}'| sudo xargs kill- 9;),并且它没有执行脚本(sudo ./sym --port 8082 --server),并且没有给出任何错误。 有人可以建议我任何想法吗?
请检查crontab是否也在Bash中运行。 如果没有,那么您可能必须更换外壳。
同样,当您手动运行脚本时,。/ sym是与您的Shell有关的位置。 可能与cron不同。 请使用完整路径执行./sym。
sudo可能需要密码,从而阻止了此命令。
我猜删除sudo可以解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.