シェルスクリプトを作成するように求められましたプロジェクトのURLが正しいかどうかを確認してください。
私はインターネットでいくつかのヒントを見つけようとしましたが、私が得たのはURLが存在することを確認するだけでした。
初めて使ってみましたwget
。
wget -S --spider https://genesis-dev.webbank.ssmb.com:21589/gop-ui/app.jsp 2>&1 | awk '/^ /'
if [ $? -ne 0 ]
then echo "Server is UP"
else
echo "Server is down"
fi
私の次の試みはcurl
。
curl -ivs https://genesis-dev.webbank.ssmb.com:21589/opconsole-sit/opconsole.html#
if [ $? -ne 0 ]
then echo "Server is UP"
else
echo "Server is down"
fi
ただし、どちらも応答するのではなくURLが存在することを確認します。
答え1
curl -Is http://www.yourURL.com | head -1
このコマンドを使用してURLを確認できます。ステータスコードは、リクエスト200 OK
が成功し、URLに接続できることを示します。
telnet
次のコマンドを使用してURLの可用性をテストし、応答コードを取得することもできます。
telnet www.yourURL.com 80
80はポート番号です。
答え2
次のことができます。
#!/bin/bash
read -p "URL to check: " url
if curl --output /dev/null --silent --head --fail "$url"; then
printf '%s\n' "$url exist"
else
printf '%s\n' "$url does not exist"
fi
しかし、これらのif
文は必須ではなく、スクリプトの流れを説明するためにここに置きました。
答え3
次は私にとって効果的でした...
status="$(curl -Is http://www.google.com | head -1)"
validate=( $status )
if [ ${validate[-2]} == "200" ]; then
echo "OK"
else
echo "NOT RESPONDING"
fi
@THUSHIが書いたことを試してみました。
答え4
ほとんどの場合、カールはhttpsでは機能しません。確認するには確認できます。「カールバージョン」この場合、httpsオプションは表示されません。以下でご利用いただけます。
wget --post-data '{"name":"Radha", "Car": "Jaquar"}' --header "Content-Type: application/json" --no-check-certificate https://yourrequiredURI