: CURL 상용 명령

14670 단어 컬.
전송 주소:http://www.cnblogs.com/gbyukg/p/3326825.html
단일 파일 을 다운로드 합 니 다. 기본 값 으로 출력 을 표준 출력 (STDOUT) 에 출력 합 니 다.
curl http://www.centos.org

- o / O 옵션 을 통 해 다운로드 한 파일 을 지정 한 파일 에 저장 합 니 다. - o: 명령 행 에서 지정 한 파일 이름 으로 파일 을 저장 하 는 파일 중 - O: URL 의 기본 파일 이름 으로 파일 을 로 컬 에 저장 합 니 다.
1 #             mygettext.html 2 curl -o mygettext.html http://www.gnu.org/software/gettext/manual/gettext.html 3 4 #             gettext.html 5 curl -O http://www.gnu.org/software/gettext/manual/gettext.html

마찬가지 로 전향 문자 ">" 를 사용 하여 출력 을 전향 출력 할 수 있 습 니 다.
여러 파일 동시에 가 져 오기
1 curl -O URL1 -O URL2

같은 사이트 에서 여러 파일 을 동시에 다운로드 할 때 curl 은 링크 (connection) 를 다시 사용 하려 고 시도 합 니 다.
- L 옵션 을 통 해 기본 값 으로 리 셋 할 경우 CURL 은 HTTP Location headers (리 셋) 를 보 내지 않 습 니 다. 요청 한 페이지 가 다른 사이트 로 이동 할 때 HTTP Loaction header 를 요청 으로 보 내 고 요청 을 새 주소 로 리 셋 합 니 다.예 를 들 어 google. com 에 접근 하면 자동 으로 주 소 를 google. com. hk 로 바 꿉 니 다.
 1 curl http://www.google.com  2 <HTML>  3 <HEAD>  4 <meta http-equiv="content-type" content="text/html;charset=utf-8">  5 <TITLE>302 Moved</TITLE>  6 </HEAD>  7 <BODY>  8 <H1>302 Moved</H1>  9  The document has moved 10 <A HREF="http://www.google.com.hk/url?sa=p&amp;hl=zh-CN&amp;pref=hkredirect&amp;pval=yes&amp;q=http://www.google.com.hk/&amp;ust=1379402837567135amp;usg=AFQjCNF3o7umf3jyJpNDPuF7KTibavE4aA">here</A>. 11 </BODY> 12 </HTML>


위 출력 설명 이 요청 한 파일 이 이전 되 었 습 니 다.http://www.google.com.hk。
이것 은 - L 옵션 을 사용 하여 강제로 방향 을 바 꿀 수 있 습 니 다.
1 #  curl       ,     google.com.hk   2 curl -L http://www.google.com

정지점 전송
- C 옵션 을 사용 하면 큰 파일 에 정지점 전송 기능 을 사용 할 수 있 습 니 다. 예 를 들 어:
1 #                 2 $ curl -O http://www.gnu.org/software/gettext/manual/gettext.html 3 ############## 20.1% 4 5 #     -C            ,                6 curl -C - -O http://www.gnu.org/software/gettext/manual/gettext.html 7 ############### 21.1%


CURL 의 최대 네트워크 사용 제한 - limit - rate 옵션 을 통 해 CURL 의 최대 네트워크 사용 제한
1 #           1000B/second 2 3 curl --limit-rate 1000B -O http://www.gnu.org/software/gettext/manual/gettext.html

지정 한 시간 내 에 수 정 된 파일 다운로드
파일 을 다운로드 할 때 이 파일 의 마지막 수정 날 짜 를 판단 할 수 있 으 며, 이 파일 이 지 정 된 날짜 내 에 수정 되 었 다 면 다운로드 할 수 있 으 며, 그렇지 않 으 면 다운로드 하지 않 습 니 다.이 기능 은 - z 옵션 을 사용 하여 구현 할 수 있 습 니 다.
1 #  yy.html   2011/12/21             2 curl -z 21-Dec-11 http://www.example.com/yy.html

CURL 권한 부여
인증 이 필요 한 페이지 에 접근 할 때 - u 옵션 을 통 해 사용자 이름과 비밀 번 호 를 제공 하여 인증 할 수 있 습 니 다.
1 curl -u username:password URL 2 3 #                 ,         ,                      4 curl -u username URL

FTP 서버 에서 파일 다운로드
CURL 역시 FTP 다운 로드 를 지원 합 니 다. url 에서 다운로드 할 파일 이름 대신 특정 파일 경 로 를 지정 하면 CURL 은 이 디 렉 터 리 에 있 는 모든 파일 을 다운로드 하지 않 고 이 디 렉 터 리 에 있 는 모든 파일 이름 을 보 여 줍 니 다.
1 #   public_html           2 curl -u ftpuser:ftppass -O ftp://ftp_server/public_html/ 3 4 #   xss.php   5 curl -u ftpuser:ftppass -O ftp://ftp_server/public_html/xss.php

FTP 서버 에 파일 업로드
- T 옵션 을 사용 하면 지정 한 로 컬 파일 을 FTP 서버 에 업로드 할 수 있 습 니 다.
#  myfile.txt        

curl -u ftpuser:ftppass -T myfile.txt ftp://ftp.testserver.com  #          curl -u ftpuser:ftppass -T "{file1,file2}" ftp://ftp.testserver.com  #                       curl -u ftpuser:ftppass -T - ftp://ftp.testserver.com/myfile_1.txt


더 많은 정보 가 져 오기
- v 와 - trace 를 사용 하여 더 많은 링크 정 보 를 얻 습 니 다.
사전 을 통 해 단 어 를 조회 하 다
1 #   bash      2 curl dict://dict.org/d:bash 3 4 #          5 curl dict://dict.org/show:db 6 7 #  foldoc     bash      8 curl dict://dict.org/d:bash:foldoc


CURL 에 프 록 시 설정
- x 옵션 을 사용 하면 CURL 에 프 록 시 기능 을 추가 할 수 있 습 니 다.
1 #           2 curl -x proxysever.test.com:3128 http://google.co.in

 
기타 사이트 정리
사이트 쿠키 정보 저장 및 사용
1 #     cookies     sugarcookies    2 curl -D sugarcookies http://localhost/sugarcrm/index.php 3 4 #        cookie   5 curl -b sugarcookies http://localhost/sugarcrm/index.php

전송 요청 데이터
기본 curl 은 GET 방식 으로 데 이 터 를 요청 합 니 다. 이 방식 에서 URL 을 통 해 데 이 터 를 직접 전달 할 수 있 습 니 다. -- data / d 방식 으로 POST 방식 으로 데 이 터 를 전달 할 수 있 습 니 다.
1 # GET 2 curl -u username https://api.github.com/user?access_token=XXXXXXXXXX 3 4 # POST 5 curl -u username --data "param1=value1&param2=value" https://api.github.com 6 7 #          ,                    8 curl --data @filename https://github.api.com/authorizations


주: 기본 적 인 상황 에서 POST 방식 으로 과거 데 이 터 를 전달 할 때 특수 문자 가 있 으 면 먼저 서버 에 특수 문 자 를 전달 해 야 합 니 다. 예 를 들 어 value 값 에 빈 칸 이 포함 되 어 있 으 면 먼저 빈 칸 을% 20 으로 변환 해 야 합 니 다. 예 를 들 어:
1 curl -d "value%201" http://hostname.com

새 버 전의 CURL 에 서 는 새로운 옵션 인 data - urlencode 를 제공 합 니 다. 이 옵션 을 통 해 제 공 된 매개 변 수 는 특수 문 자 를 자동 으로 바 꿉 니 다.
1 curl --data-urlencode "value 1" http://hostname.com

GET 와 POST 프로 토 콜 을 사용 하 는 것 외 에 - X 옵션 을 통 해 다른 프로 토 콜 을 지정 할 수 있 습 니 다. 예 를 들 어:
1 curl -I -X DELETE https://api.github.cim

파일 업로드
1 curl --form "[email protected]" http://hostname/resource

 
http://curl.haxx.se/docs/httpscripting.html

좋은 웹페이지 즐겨찾기