大家好,
我正在尝试在一台主机上运行服务器,并且同时运行3个不同主机上的3个客户端(在后台运行)。
我制作了一个bash脚本来做到这一点。问题是脚本当前不等待客户端完成:它按顺序在每个主机上进行ssh。我想让3台主机并行运行。
以下是代码:
#!/bin/bash
i="0"
dir="~/bin/"
while [ $i -lt 3 ]
do
let number=10+$i
ssh sshost$number 'cd $dir && java Main &'
let i=$i+1
done
我正在尝试ssh到3个不同的主机(每次迭代时数字都会被更改),然后转到目录并输入java Main。我唯一的问题是它不会并行执行,我无法弄清楚如何修复它。
我将不胜感激。
非常感谢。
答案 0 :(得分:0)
使ssh命令在后台运行:
ssh sshost$number 'cd $dir && java Main &' &
您可以在while循环之外调用wait
。