curl이 200이 아닌 HTTP 상태가되면 bash 스크립트 종료


11

컬 요청을 수행하기 위해 bash 스크립트 설정이 있습니다.

for currency in EUR INR JPY
do
  curl -i --data '{"currency": "'$currency'"}' -H "Accept: application/json" -H "Content-Type: application/json" http://0.0.0.0:8080/price && echo
done

컬 응답 중 하나가 http 상태! = 200으로 돌아 오면 스크립트를 종료하는 방법이 있습니까?

또한 표준 curl 출력을 유지하고 싶습니다. 예를 들어 http 상태 코드 만 인쇄하는 솔루션을 원하지 않습니다.

건배

답변:


5

--failman페이지 에서 언급했듯이 작업을 수행하는 것 같습니다.

$ curl --fail --location http://google.com/nope
$ echo $?
22

4
맨 페이지에서 다음 --fail과 같은 두 가지 이유로 적합하지 않습니다. 1. Fail silently (no output at all)및 2 This method is not fail-safe and there are occasions where non-successful response codes will slip through.
Armand
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.