ランダムURLからレスポンスを取得するには?

ランダムURLからレスポンスを取得するには?

シェルスクリプトを作成するように求められましたプロジェクトの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

関連情報