久久婷婷香蕉热狠狠综合,精品无码国产自产拍在线观看蜜,寡妇房东在做爰3,中文字幕日本人妻久久久免费,国产成人精品三上悠亚久久

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 講師博文 > linux curl命令用法(fa)簡介(jie)

linux curl命令用(yong)法簡介 時間:2019-06-03      來源:華清遠見

在linux中,curl 命令(ling)是(shi)一(yi)個利用URL規則在命令(ling)行下(xia)(xia)(xia)工(gong)作的文(wen)件(jian)傳(chuan)輸工(gong)具(ju)(ju)。curl 支(zhi)(zhi)持(chi)文(wen)件(jian)的上(shang)傳(chuan)和下(xia)(xia)(xia)載,所以是(shi)綜合傳(chuan)輸工(gong)具(ju)(ju),但習慣性的稱curl為(wei)下(xia)(xia)(xia)載工(gong)具(ju)(ju)。作為(wei)一(yi)款(kuan)強力工(gong)具(ju)(ju),curl支(zhi)(zhi)持(chi)包(bao)括HTTP、HTTPS、FTP等眾多協議(yi),還支(zhi)(zhi)持(chi) GET、POST、cookies、認證(zheng)、從指(zhi)定偏移(yi)處(chu)下(xia)(xia)(xia)載部分(fen)文(wen)件(jian)、用戶代理字符串、限速、文(wen)件(jian)大小、進度條等特征,還可以做網(wang)頁(ye)處(chu)理流程和數據檢索(suo)自動(dong)化(hua)。

一、curl命令安裝

默認在(zai)linux(ubuntu)下curl沒有安裝,需要輸入sudo apt-get install curl命令安裝

linux  curl命令用法簡介

二、curl命令語法

curl [option] [url]

(1)option為操(cao)作命(ming)(ming)令,常用命(ming)(ming)令有(you):

-A/--user-agent <string>            設置用戶代理發送給服務器

-b/--cookie <name=string/file>     cookie字符串(chuan)或文件讀(du)取位(wei)置

-c/--cookie-jar <file>               操作結束后(hou)把cookie寫(xie)入到這個文件中(zhong)

-C/--continue-at <offset>           斷點續(xu)轉

-D/--dump-header <file>             把(ba)header信息(xi)寫入到該(gai)文件中

-e/--referer                          來源網址

-f/--fail                              連(lian)接失(shi)敗時不(bu)顯示http錯誤

-o/--output                           把輸出寫到(dao)該文件中(zhong)

-O/--remote-name                     把(ba)輸出寫到該(gai)文(wen)件中,保留遠程(cheng)文(wen)件的(de)文(wen)件名(ming)

-r/--range <range>                   檢索來自(zi)HTTP/1.1或FTP服務器(qi)字(zi)節范(fan)圍

-s/--silent                            靜音(yin)模式(shi)。不輸(shu)出任(ren)何東西

-T/--upload-file <file>             上傳文件(jian)

-u/--user <user[:password]>       設置服務器的用戶和密(mi)碼

-w/--write-out [format]             什么輸出(chu)完成后

-x/--proxy <host[:port]>            在給定的(de)端口上使用HTTP代理

-#/--progress-bar                     進度條顯示當前的傳送狀態

(2)url為具體的網(wang)頁地址

例如://www.gnu.org/software/gettext/manual/gettext.html

三、Curl命令使用方法

1.保存下載文件(jian)

(1)下載單個(ge)文件(jian)

linux  curl命令用法簡介

(2)使用-o(小寫(xie))參數,可下(xia)載到本地并重(zhong)命(ming)名

linux  curl命令用法簡介

(3)使用(yong)-O(大寫)參數(shu),將(jiang)文件保(bao)存到本地并命名為gettext.html

linux  curl命令用法簡介

(4)使用(yong)重定向(xiang)功(gong)能(neng)保存

linux  curl命令用法簡介

2.斷點續傳

curl能夠從特定的文件偏移(yi)處繼續下載,它可以(yi)通(tong)過指定一個偏移(yi)量(liang)來下載部(bu)分文件:

當文件在(zai)下載完(wan)成(cheng)之前結(jie)束該進程,使用-C(大寫)參數例(li)如:

當文件在(zai)下載完成之前結束該(gai)進程:

$ curl -O //www.gnu.org/software/gettext/manual/gettext.html3

##############            ; 20.1%

通過添加-C選項(xiang)繼續對(dui)該(gai)文件進行下載,已經下載過的文件不會被重新下載

curl -C - -O //www.gnu.org/software/gettext/manual/gettext.html7

############### &nbsp;          21.1%

3.測試(shi)網(wang)頁返回值(zhi)

linux  curl命令用法簡介

在腳(jiao)本(ben)中(zhong),這是很常(chang)見的測試網站是否正常(chang)的用

4.指定(ding)proxy服務器以及(ji)其端口

很多時候上網需要(yao)用到(dao)代(dai)(dai)理服務器(比如是(shi)使用代(dai)(dai)理服務器上網或者因為使用curl別人(ren)網站而被別人(ren)屏蔽IP地址的時候),幸運的是(shi)curl通(tong)過(guo)使用內置(zhi)option:-x來支持設置(zhi)代(dai)(dai)理

curl -x 192.168.100.100:1080 //www.gnu.org/software/gettext/manual/gettext.html

5.cookie

   有(you)些網站是使用cookie來記錄(lu)session信息。對(dui)于chrome這(zhe)樣的瀏覽(lan)器(qi),可以輕(qing)易處理cookie信息,但在curl中只要增(zeng)加相關參(can)數也是。

(1)保存http的response里(li)面的cookie信息,使用-c

有(you)些網(wang)站是使用cookie來記錄session信息。對于chrome這樣(yang)的瀏覽器(qi),可以輕易處理cookie信息,但在(zai)curl中只要增加相關(guan)參數也是可以很容易的處理cookie,例(li)如:

linux  curl命令用法簡介

Cookiec.txt內容如下(xia):

linux  curl命令用法簡介

(2)保(bao)存(cun)http的response里(li)面的header信(xin)息。使用 -D

linux  curl命令用法簡介

Cookiec.txt內容如下:

linux  curl命令用法簡介

6.從(cong)FTP服務器下(xia)載文件

curl同(tong)樣支持FTP下載(zai),若在url中指定的(de)是某個文件路徑而非具體的(de)某個要下載(zai)的(de)文件名(ming),CURL則會列出該目(mu)錄下的(de)所(suo)有文件名(ming)而并非下載(zai)該目(mu)錄下的(de)所(suo)有文件,例如(ru):

列出public_html下的所有文件夾和文件

curl -u ftpuser:ftppass -O ftp://ftp_server/public_html/

 下載(zai)xss.php文件(jian)

curl -u ftpuser:ftppass -O ftp://ftp_server/public_html/xss.php

7.上(shang)傳文件到FTP服務器(qi)

curl通過 -T 選項可將指(zhi)定的(de)本(ben)地文(wen)件上傳到FTP服務器(qi)上

# 將myfile.txt文(wen)件上(shang)傳到(dao)服務器(qi)

curl -u ftpuser:ftppass -T myfile.txt ftp://ftp.testserver.com

# 同(tong)時上傳多個文(wen)件(jian)

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

# 從標(biao)準輸入獲(huo)取內(nei)容保存到服(fu)務器指(zhi)定(ding)的文(wen)件(jian)中(zhong)

curl -u ftpuser:ftppass -T - ftp://ftp.testserver.com/myfile_1.txt

8.詞典

(1)查詢bash單詞(ci)的(de)含義

linux  curl命令用法簡介

(2)列(lie)出(chu)所有詞(ci)典

linux  curl命令用法簡介

9.傳遞請(qing)求數據(ju)

默認curl使用(yong)GET方(fang)(fang)(fang)式(shi)請求數據,這種方(fang)(fang)(fang)式(shi)下直(zhi)接(jie)通(tong)過(guo)URL傳遞(di)數據,可以通(tong)過(guo) --data/-d 方(fang)(fang)(fang)式(shi)指定使用(yong)POST方(fang)(fang)(fang)式(shi)傳遞(di)數據,例(li)如:

GET:

curl -u username //api.github.com/user?access_token=XXXXXXXXXX

POST:

curl -u username --data "param1=value1&param2=value" //api.github.com

也可以指定一個(ge)文件,將該(gai)文件中的內容當作數據傳(chuan)遞給服務器端

curl --data @filename //github.api.com/authorizations

注:默(mo)認情況下,通過POST方式傳遞過去(qu)的(de)數據中(zhong)(zhong)若有特(te)殊字符,首先需要(yao)將(jiang)特(te)殊字符轉義在傳遞給服務器端(duan),如value值中(zhong)(zhong)包含有空(kong)格(ge)(ge),則需要(yao)先將(jiang)空(kong)格(ge)(ge)轉換成(cheng)%20,如:

curl -d "value%201" //hostname.com

在新版本的CURL中,提(ti)供了新的選(xuan)項 --data-urlencode,通(tong)過該(gai)選(xuan)項提(ti)供的參數會自動轉義特殊(shu)字符。

curl --data-urlencode "value 1" //hostname.com

除(chu)了使用GET和(he)POST協(xie)議(yi)外,還可以通過 -X 選項指(zhi)定其它協(xie)議(yi),如:

curl -I -X DELETE //api.github.cim

上傳文件:

curl --form "fileupload=@filename.txt" //hostname/resource

上一篇:全面剖析單片機I/O口有什么作用及用途

下一篇:單片機MCU如何實現讓部分代碼運行在RAM中

熱(re)點(dian)文章(zhang)推(tui)薦
華清學員就(jiu)業榜單
高薪學(xue)員經驗分享
熱點新聞推薦
前(qian)臺(tai)專線:010-82525158 企(qi)業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,,京公海網安備11010802025203號

回到頂部