在Linux系統(tǒng)中,curl是一個利用URL規(guī)則在命令行下工作的文件傳輸工具,可以說是一款很強大的http命令行工具。它支持文件的上傳和下載操作,是綜合傳輸工具,習慣上稱url為下載工具。下面就日常運維中基于curl命令使用做下總結
專注于為中小企業(yè)提供網(wǎng)站建設、成都網(wǎng)站設計服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)大余免費做網(wǎng)站提供優(yōu)質的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了近1000家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉變。
一、Curl命令用法
1. curl語法和參數(shù)選項
# curl [option] [url]
curl常見參數(shù)
2. curl使用說明
curl是一種命令行工具,作用是發(fā)出網(wǎng)絡請求,然后得到和提取數(shù)據(jù),顯示在"標準輸出"(stdout)上面。它支持多種協(xié)議,下面說下curl命令的日常使用示例:
3. curl上傳文件的用法(POST請求方式)
一般來說,我們都會用curl下載網(wǎng)頁,但是curl上傳文件則不常用。下面說下curl模擬"multipart/form-data"形式的form上傳文件, 命令稍稍復雜些。
4. curl常用示例
5. curl命令的超時時間
二、Curl的GET、POST、PUT、DELETE請求
1. GET、POST、PUT、DELETE含義與區(qū)別
2. GET、POST、PUT、DELETE四種請求方式的curl訪問
curl 命令,是一個利用URL規(guī)則在命令行下工作的文件傳輸工具。
curl 支持文件的上傳和下載,所以是綜合傳輸工具,但按傳統(tǒng),習慣稱curl為下載工具。
作為一款強力工具,curl支持包括HTTP、HTTPS、FTP等眾多協(xié)議,還支持 GET、POST、cookies、認證、從指定偏移處下載部分文件、用戶代理字符串、限速、文件大小、進度條等特征,還可以做網(wǎng)頁處理流程和數(shù)據(jù)檢索自動化。
在進行web后臺程序開發(fā)測試過程中,常常會需要發(fā)送url進行測試,使用curl可以方便地模擬出符合需求的url命令
curl 語法:curl [options...] url? ? ? ? ??#?curl (選項) (參數(shù))
示例1:curl -m 30 --retry 3 ? ? ? ? ??// curl 爬取網(wǎng)頁,獲取本機外網(wǎng)ip
示例2:curl -m 30 --retry 3 -x ? ? ? ? ??// curl 通過代理IP爬取網(wǎng)頁,獲取本機外網(wǎng)ip
更多示例:? ?(Shell curl wget)
使用curl發(fā)送GET請求:curl protocol://ip:port/url?args
curl?;passwd=12345678??
使用curl發(fā)送POST請求: (推薦)
curl -d "key1=value1key2=value2key3=value3" protocol://ip:port/path
示例1:curl -d 'post_data=i_love_mimvp點抗 ' ? ? ? ??// 測試 post ,發(fā)送什么數(shù)據(jù)就返回什么數(shù)據(jù),如 'i_love_mimvp點抗 '
示例2:curl?-d?"user=adminpasswd=12345678"?????// 測試 post ,模擬發(fā)送登錄的用戶名和密碼
這種方法是參數(shù)直接在header里面的,如需將輸出指定到文件可以通過重定向進行操作.
curl -H "Content-Type:application/json" -X POST -d 'json data' URL
示例1:curl -H "Content-Type:application/json" -X POST -d '{"post_data":"i_love_mimvp點抗 "}' ''
示例2:curl?-H?"Content-Type:application/json"?-X?POST?-d?'{"user":?"admin",?"passwd":"12345678"}'???
curl 應用實例
1. 文件下載
curl命令可以用來執(zhí)行下載、發(fā)送各種HTTP請求,指定HTTP頭部等操作。
如果系統(tǒng)沒有curl可以使用?yum?install?curl 安裝,也可以下載安裝。
curl是將下載文件輸出到stdout,將進度信息輸出到stderr,不顯示進度信息使用?--silent 選項。
curl URL --silent
這條命令是將下載文件輸出到終端,所有下載的數(shù)據(jù)都被寫入到stdout。
使用選項-O將下載的數(shù)據(jù)寫入到文件,必須使用文件的絕對地址:
curl --silent -O
選項-o將下載數(shù)據(jù)寫入到指定名稱的文件中,并使用--progress顯示進度條:(常用)
curl
在linux里面,使用curl命令可以將url的內(nèi)容直接顯示在終端,不過只有url是ascii碼才能正確顯示,如果是網(wǎng)頁,將顯示網(wǎng)頁源代碼,如果是二進制文件,將在終端顯示亂碼。
使用方法
在linux終端輸入下面命令回車即可返回:
curl curl //其中curl就是網(wǎng)址。
curl是利用URL語法在命令行方式下工作的開源文件傳輸工具。它被廣泛應用在Unix、多種Linux發(fā)行版中,并且有DOS和Win32、Win64下的移植版本。