インターネットダウンタイムを確認するために単一のコマンドラインを作成する方法は?

インターネットダウンタイムを確認するために単一のコマンドラインを作成する方法は?

1行のコマンドラインを作成したいと思います。

  1. google.comを絶えずpingします。
  2. pingがタイムアウトすると(切断)、エラーメッセージが画面に表示されます。

答え1

curlorを使っていpingますが、なぜそうしたいのかわかりません。

while curl -Lsf google.com >/dev/null || { printf 'Lost connection!' >&2; break; }; do :; done
while ping -c 1 google.com >/dev/null || { printf 'Lost connection!' >&2; break; }; do :; done

答え2

以下は、bashまたは同様のシェルのコード行です。

HOST=google.com; while true; do if ping -c 2 $HOST >/dev/null; then :; else echo "$(date) cannot reach $HOST"; fi; sleep 10; done

関連情報