web-dev-qa-db-ja.com

単純なif条件をashで書く方法は?

インターネットに接続しているかどうかを時々チェックする小さなスクリプトを書きたいと思います。 crontabがあるルーターのashで実行したいと思います。

If条件文でashを使用するのに苦労しています

これまでのところ、私はこのようなものに到達しました:

#!/bin/ash

echo $i
if [ $(ping -c 1 google.com) -eq 0 ]
then
  echo "IT WORKS :)"
else
  echo "no internet :( "
fi

しかし、それは私にこのエラーをもたらします:

# ./restart_on_no_connection.sh 
ash: google.com: unknown operand
no internet

何か案は ?

1
Patryk

ashはボーンから派生したものであると理解しているので、これでうまくいくと思います。

if ping -c1 www.google.com > /dev/null; then
    echo "It worked"
else
    echo "No dice"
fi
5
DopeGhoti