为了账号安全,请及时绑定邮箱和手机立即绑定

在 bash 脚本中通过 ssh 运行许多 java 应用程序

在 bash 脚本中通过 ssh 运行许多 java 应用程序

大话西游666 2023-05-24 16:31:43
我正在尝试使用 Java 应用程序优化一些实验。同一个应用程序在许多机器上。我想通过带有 ssh 的 bash 脚本运行所有这些。我有一个 bash 脚本,它有一个while循环来运行应用程序。像这样while [ $COUNTER -lt $WORKERS ]do  ssh  ubuntu@host "java java-app.jar" > /data/some-logs.log   ((COUNTER++))  ((IP_BEGINS++))done但是,当我运行脚本时,我必须稍等片刻,然后为每台机器按 Ctrl+C。如何在后台运行每个应用程序?
查看完整描述

1 回答

?
慕斯王

TA贡献1864条经验 获得超2个赞

加上前缀nohup并附加到&命令,这将在后台运行它。


while [ $COUNTER -lt $WORKERS ]

do

  ssh  ubuntu@host "nohup java -jar java-app.jar > /data/some-logs.log 2>&1 &"

  ((COUNTER++))

  ((IP_BEGINS++))

done

您可能需要处理 的引号和位置,&以确保远程 ssh 命令在后台运行,而不是您的本地 ssh

将 stderr 重定向添加到同一个日志文件,这在出现问题时可能会有所帮助


查看完整回答
反对 回复 2023-05-24
  • 1 回答
  • 0 关注
  • 152 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信