2017-03-22 8 views
0

私はこのスクリプトを実行して、差分マシンで実行されるいくつかのコマンドを実行します。diff usernameどのようにこれを達成できますか?diffパラメータとしてどのようにユーザー名を使用しますか?

cat IP | while read LINE 
do 
    echo $LINE >> output.txt 
    stackname=$LINE 
    ssh -o "BatchMode=yes" -o "StrictHostKeyChecking no" -t -t -i test.pem [email protected]$stackname "bash -s" < sh.sh 
done 
+0

私の悪いタイプのエラー私はファイルからIPをフェッチし、多くのインスタンスをログインするために異なるユーザー名でキーを使用するこのスクリプトを実行していますか? ここで質問しますが、実行されていない場合、第1ユーザのユーザ名が第2を使用する条件を追加する方法はありますか? –

答えて

0

テキストファイルにユーザー名を入れます。 「ループのための」第二を使用すると、すべてのユーザ名などで、すべてのIPを比較することができます:

cat IP | while read LINE 
cat Usernames | while read USER 
    ssh [...] [email protected]$LINE 
    if [ $? -eq "0" ]; then 
    break 
    else 
    continue 
    fi 
done 
done 

ログインが正しい場合には(変数$で?)SSH-コマンド、エラーコードは、0になった後。内側の "Username"ループが壊れます。そうでない場合は、次のUsernameで続行されます。

+0

ありがとう@Tobias私は同じスクリプトを追加する方法があります cat IPDIR |読み取り中LINE do echo $ LINE >> output.txt stackname = $ LINE ssh -o "BatchMode = yes" -o "StrictHostKeyCheckingなし" -t -t -i test.pem ec2-user @ $ stackname " bash -s "

関連する問題