web-dev-qa-db-ja.com

sshターミナルを介してサーバーを接続するためのシェルスクリプト?

Sshターミナルを介して複数のサーバーに接続するためのシェルスクリプトの作成方法。ターミナルで複数のタブを開き、sshを介して複数のサーバーを接続する必要があります

ex

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

パスワードも自動的に入力します

すべて別々のタブに。

これのためのシェルスクリプトを書く方法は?

2
Kanna

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コマンドを使用することです。これは、シェルスクリプトで記述された場合の例です。

#!/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コマンドの詳細については、 Screen User's Manual を参照してください。

参照:

  1. シェルスクリプト-ターミナルで新しいタブを開く
  2. 複数のウィンドウで1つのスクリーンセッションを開くためのbashスクリプト?
6
P.-H. Lin