在Linux中curl是一個利用URL規(guī)則在命令行下工作的文件傳輸工具,可以說是一款很強大的http命令行工具。它支持文件的上傳和下載,是綜合傳輸工具,但按傳統,習慣稱url為下載工具。
語法: # curl [option] [url]
常見參數:
-A/--user-agent <string> 設置用戶代理發(fā)送給服務器-b/--cookie <name=string/file> cookie字符串或文件讀取位置-c/--cookie-jar <file> 操作結束后把cookie寫入到這個文件中-C/--continue-at <offset> 斷點續(xù)轉-D/--dump-header <file> 把header信息寫入到該文件中-e/--referer 來源網址-f/--fail 連接失敗時不顯示http錯誤-o/--output 把輸出寫到該文件中-O/--remote-name 把輸出寫到該文件中,保留遠程文件的文件名-r/--range <range> 檢索來自HTTP/1.1或FTP服務器字節(jié)范圍-s/--silent 靜音模式。不輸出任何東西-T/--upload-file <file> 上傳文件-u/--user <user[:password]> 設置服務器的用戶和密碼-w/--write-out [format] 什么輸出完成后-x/--proxy <host[:port]> 在給定的端口上使用HTTP代理-#/--progress-bar 進度條顯示當前的傳送狀態(tài)
例子:
1、基本用法
# curl http://www.linux.com
執(zhí)行后,www.linux.com 的html就會顯示在屏幕上了
Ps:由于安裝linux的時候很多時候是沒有安裝桌面的,也意味著沒有瀏覽器,因此這個方法也經常用于測試一臺服務器是否可以到達一個網站
2、保存訪問的網頁
2.1:使用linux的重定向功能保存
# curl http://www.linux.com >> linux.html
2.2:可以使用curl的內置option:-o(小寫)保存網頁
$ curl -o linux.html http://www.linux.com
執(zhí)行完成后會顯示如下界面,顯示100%則表示保存成功
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed100 79684 0 79684 0 0 3437k 0 --:--:-- --:--:-- --:--:-- 7781k
2.3:可以使用curl的內置option:-O(大寫)保存網頁中的文件
要注意這里后面的url要具體到某個文件,不然抓不下來
# curl -O http://www.linux.com/hello.sh
3、測試網頁返回值
# curl -o /dev/null -s -w %{http_code} www.linux.comPs:在腳本中,這是很常見的測試網站是否正常的用法
4、指定proxy服務器以及其端口
很多時候上網需要用到代理服務器(比如是使用代理服務器上網或者因為使用curl別人網站而被別人屏蔽IP地址的時候),幸運的是curl通過使用內置option:-x來支持設置代理
新聞熱點
疑難解答