yum install curl
curl是一個利用URL規則在命令行下工作的文件傳輸工具,可以說是一款很強大的http命令行工具。它支持文件的上傳和下載,是綜合傳輸工具,但按傳統,習慣稱url為下載工具。
http://man.linuxidc.net/curl
常見示例:
文件下載
curl命令可以用來執行下載、發送各種HTTP請求,指定HTTP頭部等操作,curl是將下載文件輸出到stdout,將進度信息輸出到stderr。
curl URL --silent #--silent顯示進度信息
curl http://man.linuxidc.net/text.iso --silent -O 選項 #-O 寫入文件,必須是絕對路徑
curl http://man.linuxidc.net/test.iso -o filename.iso --progress #-o指定文件並使用--progress顯示進度條
######################################### 100.0%
斷點續傳
curl能夠從特定的文件偏移處繼續下載,它可以通過指定一個偏移量來下載部分文件。
curl URL/File -C 偏移量 #偏移量是以字節為單位的整數
curl -C -URL # -C - 讓curl自動推斷出正確的續傳位置
使用curl設置參照頁字符串
參照頁是位於HTTP頭部中的一個字符串,用來表示用戶是從哪個頁面到達當前頁面的,如果用戶點擊網頁A中的某個連接,那麼用戶就會跳轉到B網頁,網頁B頭部的參照頁字符串就包含網頁A的URL。 使用--referer選項指定參照頁字符串:
curl --referer http://www.google.com http://man.linuxidc.net #表示用戶從谷歌跳到man的
用curl設置cookies
使用--cookie "COKKIES"選項來指定cookie,多個cookie使用分號分隔:
curl http://man.linuxidc.net --cookie "user=root;pass=123456"
將cookie另存為一個文件,使用--cookie-jar選項:
curl URL --cookie-jar cookie_file
用curl設置用戶代理字符串
有些網站訪問會提示只能使用IE浏覽器來訪問,這是因為這些網站設置了檢查用戶代理,可以使用curl把用戶代理設置為IE,這樣就可以訪問了。使用--user-agent或者-A選項: curl URL --user-agent "Mozilla/5.0"
curl URL -A "Mozilla/5.0"
其他HTTP頭部信息也可以使用curl來發送,使用-H"頭部信息" 傳遞多個頭部信息,例如:
curl -H "Host:man.linuxidc.net" -H "accept-language:zh-cn" URL
curl的帶寬控制和下載配額
curl URL --limit-rate 50k #--limit-rate限制curl的下載速度,可用k和m指定單位
curl URL --max-filesize bytes #--max-filesize指定下載文件大小,若大小超出限制,命令返回非0退出碼
用curl進行認證
使用curl選項 -u 可以完成HTTP或者FTP的認證,可以指定密碼,也可以不指定密碼在後續操作中輸入密碼
curl -u user:pwd http://man.linuxidc.net
curl -u user http://man.linuxidc.net
只打印響應頭部信息
curl -I http://man.linuxidc.net #通過-I或者-head可以只打印出HTTP頭部信息
Ubuntu 16.04 及衍生版安裝 cURL 7.49.0 http://www.linuxidc.com/Linux/2016-05/131574.htm
詳解PHP的cURL幾個函數 http://www.linuxidc.com/Linux/2016-11/137218.htm