![ssh: サーバーグループ定義 [重複]](https://linux33.com/image/4437/ssh%3A%20%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%E5%AE%9A%E7%BE%A9%20%5B%E9%87%8D%E8%A4%87%5D.png)
複数のサーバーに接続するためにスクリプトを使用しています。現在私は次のようなものを使用しています:
for SERVER in server1 server2 server3 ; do ssh $SERVER "my-command" ; done
毎回(多くの)サーバーを指定する必要があります。 SSHのようなより良い方法があるかどうか疑問に思います。 「サーバーグループ」を定義して呼び出すことはできますか?
for SERVER in $SERVERLIST ; do ssh $SERVER "my-command" ; done
それともこれは悪い考えであり、bashで行われるべきですか?
答え1
$SERVERLIST
シェルから直接変数を設定できます。
$ SERVERLIST="server1 server2 server3"
また、ファイルに入れてファイルを繰り返すこともできます。
$ for SERVER in $(<servers.txt) ; do ssh $SERVER "my-command" ; done