Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Note

이 페이지 내용이 너무 많아져서 curl 주요 사용법 요약 에 주요 내용만 축약했습니다. 

Tip

Web 에서 파일을 다운받을 경우 wget 이 더 사용이 간편합니다.

...

shortlong설명비고
-k--insecurehttps 사이트를 SSL certificate 검증없이 연결한다.wget 의 --no-check-certificate 과 비슷한 역할 수행
-l--headHTTP header 만 보여주고 content 는 표시하지 않는다
-D--dump-header <file><file> 에 HTTP header 를 기록한다.
-L--location

서버에서 HTTP 301 이나 HTTP 302 응답이 왔을 경우 redirection URL 로 따라간다.

--max-redirs 뒤에 숫자로 redirection 을 몇 번 따라갈지 지정할 수 있다. 기본 값은 50이다

curl -v daum.net 을 실행하면 결과값으로 다음과 같이 HTTP 302 가 리턴된다.

Panel

< HTTP/1.1 302 Object Moved
< Location: http://www.daum.net/

-L 옵션을 추가하면 www.daum.net 으로 재접속하여 결과를 받아오게 된다.

-d--dataHTTP Post dataFORM 을 POST 하는 HTTP나 JSON 으로 데이타를 주고받는 REST 기반의 웹서비스 디버깅시 유용한 옵션이다
-v--verbose 동작하면서 자세한 옵션을 출력한다.
-J--remote-header-name어떤 웹서비스는 파일 다운로드시 Content-Disposition Header 를 파싱해야 정확한 파일이름을 알 수 있을 경우가 있다. -J 옵션을 주면 헤더에 있는 파일 이름으로 저장한다.curl 7.20 이상부터 추가된 옵션
-o--output FILEcurl 은 remote 에서 받아온 데이타를 기본적으로는 콘솔에 출력한다. -o 옵션 뒤에 FILE 을 적어주면 해당 FILE 로 저장한다. (download 시 유용)
-O--remote-namefile 저장시 remote 의 file 이름으로 저장한다. -o 옵션보다 편리하다.
-s--silent정숙 모드. 진행 내역이나 메시지등을 출력하지 않는다. -o 옵션으로 remote data 도 /dev/null 로 보내면 결과물도 출력되지 않는다HTTP response code 만 가져오거나 할 경우 유리
-X--request

Request 시 사용할 method 종류(GET, POST, PUT, PATCH, DELETE) 를 기술한다.


-i--include응답에 Content 만 출력하지 않고 서버의 Reponse 도 포함해서 출력한다. (디버깅에 유용)

HTTP/HTTPS Download(GET Method)

...

Code Block
languagebash
curl -z -21-Dec-11 http://www.example.com/yy.html

http 응답 코드만 출력(

...

-w)

HTTP Header 나 contents 는 빼고 HTTP Response code 만 출력한다. 서버의 정상 작동 여부 점검때 유용하다.

...

이를 활용하여 아래처럼 간단한 스크립트로 웹 서버의 정상 동작 여부를 확인할 수 있다.

Expand


결과값에 HTTP Header 포함(-i)

-i ,–include 옵션을 사용하면 서버의 응답에 서버가 보낸 HTTP 헤더를 추가하여 출력한다. 디버깅에 유용한다.

...