我想杀死并重新启动进程,此命令适用于交互模式,但不适用于脚本模式。
任何建议:
echo "Killing the running server"
kill $(ps -a | grep 'myserver.jar' | awk '{print $2}') || echo 'No active myserver' ; exit 1;
答案 0 :(得分:2)
这可能有效:
v=$(pgrep -f myserver.jar)
if [ $? == 0 ]; then
kill $v
else
echo "no server"
fi
# start server...
答案 1 :(得分:0)
当一个命令在交互式中运行正常而不是[batch,crontab,...自己动手]时,你应该仔细检查:
如果还不够,请查看所有环境变量...
答案 2 :(得分:0)
也许可以考虑尝试pkill
:
pkill myserver.jar