如何在新的 gnome-terminal 中运行命令?

如何在新的 gnome-terminal 中运行命令?

我想在一些服务器上运行一些命令。

因此,我创建了一个 bash 文件:

#!/bin/sh
for n in `cat ~/nodes`; do
        gnome-terminal -x ssh root@$n
        ANYCOMMAND
done

在新的终端上建立了连接。

我如何在每台服务器上应用 ANYCOMMAND?

答案1

一份提案:

#!/bin/bash
while read -r n; do
  </dev/null ssh root@$n "ANYCOMMAND"
done < ~/nodes

答案2

有几种工具可用于同时在多台主机上运行命令。其中一些工具会在 X 中打开终端窗口(例如 ClusterSSH),大多数工具用于在 CLI 上运行命令:

http://web.taranis.org/shmux/

http://sourceforge.net/projects/mussh/

http://pydsh.sourceforge.net/

https://github.com/Ticketmaster/onall

http://sourceforge.net/projects/clusterssh/

https://code.google.com/p/omnissh/wiki/OmniSSH

https://code.google.com/p/pdsh/

http://www.theether.org/pssh/

http://www.gnu.org/software/parallel/

http://www.netfort.gr.jp/~dancer/software/dsh.html.en

https://github.com/ndenev/mpssh

http://sourceforge.net/projects/pussh/

对于几乎所有工具,您都可以发送命令并另外拥有交互式 shell。否则,将命令发送到服务器将运行命令,而不是拥有交互式登录 shell。

相关内容