jenkins pipeline中执行nohup java -jar ***.jar & 的时候会忽略执行jar之后的命令

搜索关键词:pipeline中执行nohup时忽略执行&

 

问题:

在做自动化部署的时候,脚本如下:

sh "ssh root@'$target_ip' nohup '$java_home' -jar '$app_home'/'$env.JOB_NAME'.jar >'$app_home'/ 2>&1 &"

总是执行到.jar这里后面的指定日志输出和后台运行命令(>'$app_home'/ 2>&1 &)没有执行

 

解决:

将nohup到最后的&之间的命令用''单引号引起来,当做一个整体命令

sh "ssh root@'$target_ip' 'nohup '$java_home' -jar '$app_home'/'$env.JOB_NAME'.jar >'$app_home'/ 2>&1 &'"

 

posted @ 2019-01-24 20:53  秋寻草  阅读(1387)  评论(1编辑  收藏  举报