是否有SSH客户端将命令复制到多个终端?
我想从一个终端控制几个ssh连接。 例如,我将在主终端中键入ifconfig
,所有其他ssh连接将运行ifconfig
。 这就是在Windows上为 PuttyCM提供的例子 。
这可能是一个非常简单的问题,但我没有设法找到这样的ssh连接管理器。 我不会太难编码,但肯定已经存在。 你能提一些提示吗?
群集SSH
群集SSH用于在单独的终端窗口中启动多个SSH连接,并具有公共输入框。 您键入输入框,键击将发送到所有连接的终端。
sudo apt-get install clusterssh
然后运行cssh
:
cssh host1 host2 ...
使用带广播的终端仿真器
例如,终结者是一个终端模拟器,您可以在其中向一组终端广播击键:
根据您建立的连接数量,Cluster SSH可能是更好的选择。 但是,它使用xterm
作为终端仿真器,这可能不是您习惯的。 然而,使用cssh
开始使用大量连接要比在Terminator中创建大量分割并将它们分组要容易得多。 例如,这就是cssh osl-{01..95}
让我:
终端窗口全部resize并平铺。 对于因连接失败而关闭的窗口的间隙。
有很多选择可以实现你想要的。 我最喜欢的是pssh
(并行SSH)。 它可以在多个主机上并行运行命令,并具有多种选项。
您可以通过以下方式安装:
sudo apt-get install pssh
pssh
有一些额外的优点,比如它将与parallel-scp
, parallel-rsync
二进制文件一起安装,就像它们的名字所暗示的那样。
下面是一个使用pssh
在两台主机上运行whoami
命令作为用户foobar
pssh
:
parallel-ssh -iAH "host_1 host_2" -l foobar "whoami"
检查man pssh
或在这里获得更多想法。