0
A)IPのリストを繰り返してpingするスクリプトを作成しようとしていますが、既知の資格情報を使って正常にログインしようとすると成功した場合はそのホストをリストに追加しますアクションは繰り返されません。sshでステートメントをネストした場合
このスクリプトは、A)ホストがpingで利用できない場合、またはB)が利用可能であり、既知の資格情報が機能している場合、期待どおりに実行されます。ホストに対してpingを実行できるが、ssh接続が拒否された場合、スクリプトは次の変数(またはIP)を使用する代わりに終了します。ありがとう!私がこれまで持って何
:
while read p; do
ping -c1 -t1 $p
if [ $? -eq 0 ]
then
/usr/local/bin/sshpass -p $PW ssh -o StrictHostKeyChecking=no "$USR"@"$p" </dev/null "
scutil --get ComputerName" | tee -ai $WORKING
MACHINE=$(head -n 1 $WORKING)
if grep -Fxq $MACHINE "$FULL"
then
echo $MACHINE has been worked on already
else
echo $MACHINE has not been worked on
echo $MACHINE >> $FULL
rm -rf $WORKING
fi
else
echo ping fail
fi
done </iprange.txt
質問は何ですか? – 123
ssh接続が拒否されたときに次の変数にサイクリングしないのはなぜですか?入れ子にされたifループを削除すると、正常に動作します – Havens
"ifループ"とは何ですか?ああ、投稿してください[mcve]。あなたの例は最小ではありません。 – Heinzi