curl命令是一個(gè)利用URL規(guī)則在命令行下工作的文件傳輸工具。
curl支持包括HTTP、HTTPS、FTP等眾多協(xié)議,還支持POST、cookies、認(rèn)證、從指定偏移處下載部分文件、用戶代理字符串、限速、文件大小、進(jìn)度條等特征
語法:
curl (選項(xiàng)) (參數(shù))
用法:
1、獲取頁面內(nèi)容
當(dāng)curl后不添加任何參數(shù)時(shí),默認(rèn)發(fā)送GET請求來獲取鏈接內(nèi)容到標(biāo)準(zhǔn)輸出
2、顯示HTTP頭
只顯示HTTP頭,不顯示文件內(nèi)容,使用-I選項(xiàng)
eg:curl -I http://www.codebelief.com
同時(shí)顯示HTTP頭和文件內(nèi)容,使用-i選項(xiàng)
3、將內(nèi)容保存到文件
可以使用> 符號將返回內(nèi)容保存到文件
eg: curl http://www.baidu.com > index.html
也可以使用-o/-O選項(xiàng)保存到文件
-o :結(jié)果會被保存到命令行中提供的文件名
-O:URL中的文件名會被用作保存輸出的文件名
eg:curl -o index.html http://www.baidu.com curl -O http://www.baidu.com/index.html
4、重定向
使用-L跟隨連接重定向
curl -L http://codebelief.com
5、使用-A自定義User-Agent,使用-H自定義header
6、使用-c保存cookie
curl -c (文件名) http://www.baidu.com
7、使用-b讀取cookie
-b后面既可以是cookie字符串,也可以是保存了cookie的文件名
8、使用-d發(fā)送POST請求
-d用于指定發(fā)送的數(shù)據(jù),-X用于指定發(fā)送數(shù)據(jù)的方式
curl -d “userName=tom&passwd=123456” -X POST http://www.example.com/login
選項(xiàng):
- -a, --append :上傳文件時(shí),附加到目標(biāo)文件
- -A, --user-agent <string>:設(shè)置用戶代理發(fā)送給服務(wù)器
- -anyauth:可以使用任何身份驗(yàn)證方法
- -b
--cookie <name=string/file>: cookie字符串或文件讀取位置
--basic :使用HTTP基本驗(yàn)證 - -B, --use-ascii:使用ASCII /文本傳輸
- -c, --cookie-jar <file>:操作結(jié)束后把cookie寫入到這個(gè)文件中
- -C, --continue-at <offset>:斷點(diǎn)續(xù)傳
- -d,--data<data> HTTP POST方式傳送數(shù)據(jù)