通过 ssh 终端连接服务器的 shell 脚本?

通过 ssh 终端连接服务器的 shell 脚本?

如何编写 shell 脚本以通过 ssh 终端连接多个服务器。它应该在终端中打开多个选项卡并通过 ssh 连接多个服务器

前任

ssh [email protected]
ssh [email protected]
ssh [email protected]

自动填写密码

所有内容都在单独的标签中。

如何为此编写 shell 脚本?

答案1

你可以使用它gnome-terminal来打开新终端或新标签

#!/bin/bash
#
# The following command open new windows
#
gnome-terminal -e "ssh [email protected]"
gnome-terminal -e "ssh [email protected]"
gnome-terminal -e "ssh [email protected]"
#
# The following command open new tabs
#
gnome-terminal --tab -e "ssh [email protected]" --tab -e "ssh [email protected]"

另一个解决方案是使用screen命令,这是在 shell 脚本中编写的一个示例:

#!/bin/bash
# Create a detached screen name with "node1"
screen -d -m -S node1
# Create a detached screen name with "node3"
screen -d -m -S node3
# Start another screen within node1
screen -S node1 -X screen
# Execute your command in the screen instance of node1
screen -S node1 -p 0 -X exec ssh [email protected]
# Same as above
screen -S node3 -X screen
screen -S node3 -p 0 -X exec ssh [email protected]

运行完此脚本后,你可以使用 打开刚刚创建的屏幕实例screen -r node1,有关screen命令的更多信息,请参阅屏幕使用手册

参考:

  1. shell 脚本 - 在终端中打开一个新选项卡
  2. bash 脚本打开具有多个窗口的 1 个屏幕会话?

相关内容