接続が確立されていることを確認するためにループを作成しています。
私は仕事をします。
ping -c 1 8.8.8.8
while [ $? -ne 0 ] do
sleep 0.5
ping -c 1 8.8.8.8
done
これでこれがどのように機能するのかよくわかりません。 ping要求の実行中に(iptablesまたは他の)ブロックすると、コマンドとスクリプトは無期限に中断されます。私が望むのは、1秒後に応答を待たずに新しい要求を送信することです。 0に等しく、1秒以上以内に応答を受信するまで$?
ループは中断されます。
答え1
while ! (ping -c 1 -W 1 8.8.8.8 > /dev/null); do
sleep 1
done
echo "< 1 sec reply received...exiting"