微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

bash – 运行eval命令后控制到下一个语句

我编写了一个bash脚本来在后台运行服务并从脚本退出到命令行.但是在运行eval命令之后,控件不会进入下一个语句.
COMMAND="nohup java -jar jenkins.war"
echo "starting service"
eval $COMMAND
echo "service running"
exit

echo“服务运行”并且退出永远不会发生.我想在后台运行该进程,并在服务仍在运行时返回到命令提示符.我该怎么做呢?

请不要将带有参数的命令放在字符串中.将您的命令及其参数放在一个数组中(并且不要使用大写的变量名,这是一个非常糟糕的做法),并且不要使用eval. eval是邪恶的!
command=( nohup java -jar jenkins.war )
echo "starting service"
"${command[@]}" 2> /dev/null &
echo "service running"

&是让命令在后台运行.

原文地址:https://www.jb51.cc/bash/385145.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐