티스토리 뷰

기타

Linux curl 명령어

맥밤 2016. 3. 15. 21:02

curl 명령은 인자로 넘어온 URL로 HTTP 요청을 보내는 웹 클라이언트의 역할을 수행한다. 

이 요청을 받은 www.example.com 도메인의 웹 서버는 그 결과를 응답한다.


기본적인 curl 사용

$ culr www.example.com

<!doctype html>

<html>

<head>

    <title>Example Domain</title>


    <meta charset="utf-8" />

    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />

    <meta name="viewport" content="width=device-width, initial-scale=1" />

    <style type="text/css">

    body {

        background-color: #f0f0f2;

        margin: 0;

        padding: 0;

        font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;

        

    }

    div {

        width: 600px;

        margin: 5em auto;

        padding: 50px;

        background-color: #fff;

        border-radius: 1em;

    }

    a:link, a:visited {

        color: #38488f;

        text-decoration: none;

    }

    @media (max-width: 700px) {

        body {

            background-color: #fff;

        }

        div {

            width: auto;

            margin: 0 auto;

            border-radius: 0;

            padding: 1em;

        }

    }

    </style>    

</head>


<body>

<div>

    <h1>Example Domain</h1>

    <p>This domain is established to be used for illustrative examples in documents. You may use this

    domain in examples without prior coordination or asking for permission.</p>

    <p><a href="http://www.iana.org/domains/example">More information...</a></p>

</div>

</body>

</html>


자세한 내용 표시 - curl 이 과정하는 작업과 서버로 전송하는 내용 등을 자세하게 보여준다.

$ curl -v www.example.com

* Rebuilt URL to: www.example.com/

*   Trying 93.184.216.34...

* Connected to www.example.com (93.184.216.34) port 80 (#0)

> GET / HTTP/1.1

> Host: www.example.com

> User-Agent: curl/7.43.0

> Accept: */*

> 

< HTTP/1.1 200 OK

< Accept-Ranges: bytes

< Cache-Control: max-age=604800

< Content-Type: text/html

< Date: Tue, 15 Mar 2016 11:55:17 GMT

< Etag: "359670651+gzip"

< Expires: Tue, 22 Mar 2016 11:55:17 GMT

< Last-Modified: Fri, 09 Aug 2013 23:54:35 GMT

< Server: ECS (cpm/F9D5)

< Vary: Accept-Encoding

< X-Cache: HIT

< x-ec-custom-error: 1

< Content-Length: 1270

< 

<!doctype html>

<html>

<head>

    <title>Example Domain</title>


    <meta charset="utf-8" />

    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />

    <meta name="viewport" content="width=device-width, initial-scale=1" />

    <style type="text/css">

    body {

        background-color: #f0f0f2;

        margin: 0;

        padding: 0;

        font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;

        

    }

    div {

        width: 600px;

        margin: 5em auto;

        padding: 50px;

        background-color: #fff;

        border-radius: 1em;

    }

    a:link, a:visited {

        color: #38488f;

        text-decoration: none;

    }

    @media (max-width: 700px) {

        body {

            background-color: #fff;

        }

        div {

            width: auto;

            margin: 0 auto;

            border-radius: 0;

            padding: 1em;

        }

    }

    </style>    

</head>


<body>

<div>

    <h1>Example Domain</h1>

    <p>This domain is established to be used for illustrative examples in documents. You may use this

    domain in examples without prior coordination or asking for permission.</p>

    <p><a href="http://www.iana.org/domains/example">More information...</a></p>

</div>

</body>

</html>

* Connection #0 to host www.example.com left intact



redirect 따라가기 


$ curl -v www.example.com

* Rebuilt URL to: www.example.com/

*   Trying 93.184.216.34...

* Connected to www.example.com (93.184.216.34) port 80 (#0)

> GET / HTTP/1.1

> Host: www.example.com

> User-Agent: curl/7.43.0

> Accept: */*

> 

< HTTP/1.1 200 OK

< Accept-Ranges: bytes

< Cache-Control: max-age=604800

< Content-Type: text/html

< Date: Tue, 15 Mar 2016 11:55:17 GMT

< Etag: "359670651+gzip"

< Expires: Tue, 22 Mar 2016 11:55:17 GMT

< Last-Modified: Fri, 09 Aug 2013 23:54:35 GMT

< Server: ECS (cpm/F9D5)

< Vary: Accept-Encoding

< X-Cache: HIT

< x-ec-custom-error: 1

< Content-Length: 1270

< 

<!doctype html>

<html>

<head>

    <title>Example Domain</title>


    <meta charset="utf-8" />

    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />

    <meta name="viewport" content="width=device-width, initial-scale=1" />

    <style type="text/css">

    body {

        background-color: #f0f0f2;

        margin: 0;

        padding: 0;

        font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;

        

    }

    div {

        width: 600px;

        margin: 5em auto;

        padding: 50px;

        background-color: #fff;

        border-radius: 1em;

    }...............생략


파일 다운로드 

$ curl -O -L www.example.com/index.html

$ ls

index.html


'기타' 카테고리의 다른 글

pid_t 구조체에 대해서  (0) 2016.07.02
main()함수 외에 다른 함수를 만들어야 하는 이유  (0) 2016.04.06
Visual Basic 파일의 특징  (0) 2016.01.12
Process Explorer - 작업 관리자  (0) 2015.12.29
ASCII 코드  (0) 2015.12.28
댓글