ユーザー名とパスワードを使用してSSHを介して複数のサーバーに接続したい場合、以下のスクリプトにユーザー名とパスワードを入力するオプションを知っておく必要があります。
for HOST in $(cat ping.txt ) ; do ssh $HOST "ping -c 10 google.com" ; done
ベストアンサー1
sshpassを使用できますが、使用する方が良いアンシプール。 sshpassの使用例:
# vim server.list
192.168.0.100
192.168.0.101
# apt-get install sshpass
$ vim script.sh
#!/bin/bash
while read -r line
do
echo "running $line"
SSHPASS=PASSWORD sshpass -e ssh-copy-id USERNAME@"$line" -o "StrictHostKeyChecking no"
done < "server.list"
スクリプトを実行します。
$ sh script.sh
running 192.168.0.100
...
Number of key(s) added: 1
running 192.168.0.101
...
Number of key(s) added: 1