curl shell 명령은 입력 오류가 발생하더라도 항상 오류 상태 0을 반환합니다.


0

예 : 기존 파일이 아닌 파일을 업로드하려고하면 curl -d @no-real-file http://google.com | echo $?0이 반환됩니다.

입력 오류에서 컬이 실패하게하려면 어떻게해야합니까?

답변:


2

당신이 사용할 수있는 curl -f

-f, --fail  (HTTP) Fail silently (no output at all) on server errors. 
This is mostly done to better enable scripts etc to better deal with failed attempts. 
In normal cases when a HTTP server  fails  to  deliver  a  document,  it returns 
an HTML document stating so (which often also describes why and more). This flag 
will prevent curl from outputting that and return error 22.

This method is not fail-safe and there are occasions where non-successful response 
codes will slip through, especially when authentication is involved (response codes 
401 and 407).

경우에 -f사용되며, curl반환 22다음 명령

curl -f -d @no-real-file http://google.com

0

이것은 정확히 요청한 것이 아닐 수도 있지만 파일이 미리 존재하는지 확인하기 위해 간단히 확인할 수 있습니다.

[ -f $somefile ] && curl -d $somefile blah blah

1
@ no-real-file은 단지 예일뿐입니다. 다른 시나리오도있을 수 있다고 생각합니다.
AlikElzin-kilaka
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.