http サーバーからの断続的なエラー応答をテストして定量化しようとしています。必要な要求を行うことができる curl 呼び出しを作成しましたが、上向き矢印を入力して戻るのにうんざりしています。
エラーが発生するまで繰り返しリクエストを作成し、エラーが発生する前の成功応答の数を出力するようにcurlに指示するにはどうすればよいですか?
http サーバーからの断続的なエラー応答をテストして定量化しようとしています。必要な要求を行うことができる curl 呼び出しを作成しましたが、上向き矢印を入力して戻るのにうんざりしています。
エラーが発生するまで繰り返しリクエストを作成し、エラーが発生する前の成功応答の数を出力するようにcurlに指示するにはどうすればよいですか?
この bash レシピは、探しているものを実行するはずです。
i=0 ; while true ; do curl -o /dev/null -s https://www.google.com/ ; if [ $? -ne 0 ] ; then echo $i ; break ; fi ; i=$(($i+1)) ; echo -en "$i \r" ; sleep 1 ; done
複数の行に分割:
i=0 # set counter to 0
while true # infinite loop
do
curl -o /dev/null -s https://www.google.com/ # silent curl request to site
if [ $? -ne 0 ]
then
# curl didn't return 0 - failure
echo $i
break # terminate loop
fi
i=$(($i+1)) # increment counter
echo -en "$i \r" # display # of requests each iteration
sleep 1 # short pause between requests
done
オプションで cURL 出力をファイルにリダイレクトできるため、失敗した場合は、次のようなものを使用して出力を確認できます。
curl -v -o /dev/null https://google.com &> /tmp/output.txt