curl命令使用


curl命令可以用來構造http請求。參數有很多,常用的參數如下:

通用語法:
curl [option] [URL...]
在處理URL時其支持類型於SHELL的名稱擴展功能,如http://www.jbxue.com/archive[1996-1999]/vol[1-4]/part{a,b,c}.html可以生成多個期望的URL

curl的選項功能:

  • 不帶任何參數時 curl 將返回指定url中的數據並打印在屏幕上
  • -u 使用用戶名和密碼登陸。如curl -uname:passwd URL
  • -b/--cookie  <name=data>   向服務器提交cookie,若無=則name視為文件名,例如:curl -b cookie.txt www.jbxue.com
  • -o out  將指定curl返回保存為out文件,內容從html/jpg到各種MIME類型文件。如curl -o page.html URL
  • -d <key=value>  向服務器POST表單數據 例如:curl -d "order=111&count=2" http://www.jbxue.com/buy
  • -A/--user-agent  <ua>  指定發送請求的用戶代理,例如:curl -A My-Agent/1.0.0 www.jbxue.com 
  • -x  ip:port 指定使用的http代理,例如:curl -x 192.168.1.1:8080 www.jbxue.com
  • -D head.txt  將服務器的返回的header保存為文件,頭部的cookie也可被保存,例如:curl -D header.txt www.jbxue.com  
    • 如果希望從本地文件中獲取表單數據,則在文件名前加@ ,例如:curl -d @data.xml http://www.jbxue.com
    • 若希望從標准輸入獲取則用 curl -d "name=username&passwd=pwd" http://www.jbxue.com
  • -L 當頁面有跳轉的時候,輸出跳轉到的頁面
  • -I  header信息  當有跳轉時,可以通過 curl -L -I URL|grep Location 來確定跳轉到的新url地址
  • -c <file> 保存服務器的cookie文件
  • -e url  設置引用頭的值
  • -T localfile  向服務器PUT文件 例如:curl -T 1.mp3  www.jbxue.com/upload.php
  • -F <key=value> 向服務器POST表單,例如:curl -F "web=@index.html;type=text/html" url.com
  • -E cert.pem  指定本地證書
  • -H <header:value>  為HTTP請求設置任意header及值。如curl -H "Connection:keep-alive" http://www.jbxue.com
  • -X/--request method 用戶定義的HTTP請求方法名如 curl -X GET www.baidu.com
  • --compressed 采用壓縮方式接收返回數據
  • --connect-timeout <s> 設置超時時間
  • -v 詳細輸出,包含請求和響應的首部
  • --retry num
  • --retry timeo 指定重試的次數和間隔
  • --tcp-nodelay 打開TCP_NODELAY選項  不進行捎帶確認
  • -O  按服務器上的名稱保存下載的文件
  • -r/--range  from-to 下載指定range內的數據
  • -C 在保存文件時進行續傳

環境 變量:http_proxy [protocol://]<host>[:port]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM