linux不是預設安裝curl的。curl是一個利用URL在命令列工作的檔案傳輸工具,並不是所有的linux系統中都會自帶curl命令,例如簡潔版的Linux系統就可能並不存在,只需通過執行「yum install curl」命令安裝即可。
本教學操作環境:linux5.9.8系統、Dell G3電腦。
curl 命令
Linux 系統中的 curl 命令是一個利用 URL 在命令列工作的檔案傳輸工具,通常用於 Linux 系統中服務的存取和檔案的下載。
curl 命令支援HTTP、HTTPS、FTP等多種協定,可用於服務請求的模擬和檔案的上傳下載。
linux預設安裝curl嗎?
linux不是預設安裝curl。
並不是所有的系統中都會自帶 curl 命令,對於簡潔版的 Linux 系統可能並不存在,此時可以使用 yum 命令來安裝 curl,yum install curl
。
安裝完成後,可以使用curl --version
命令檢視系統中 curl 的版本資訊。
curl 命令的語法格式
curl 命令的標準使用語法是:curl [options] [url]
,其中 options
用於指定引數項,url
是請求的服務地址。
不使用引數項執行請求:curl http://www.baidu.com,該情況下命令執行會直接請求指定的服務地址,並將請求結果原始碼輸出到 Linux 命令列中。
相關引數:
curl 命令通過不同的引數項實現了豐富的功能,常見的引數項有:
-i,即 --head,表示請求結果顯示響應頭資訊
-o,即 --output,後跟檔案路徑,表示將請求結果寫入到指定檔案中
-s,即 --silent,靜默模式,表示此時請求結果不會出現額外資訊
-w,即 --write-out [format],引數後跟格式串,表示命令執行完成後指定輸出內容
通常在測試介面是否正常時可以使用命令:
curl -o /dev/null -s -w %{http_code} http://www.baidu.com
此時服務的返回原始碼寫入到空地址null中,且開啟靜默模式,並在請求後輸出http狀態碼,如請求成功,則返回 200。
對於 curl 的更多可用引數項,可以使用 curl -h/--help 查詢。
使用 curl 上傳和下載檔案
1、檔案上傳
curl 中提供了上傳檔案的命令引數,可以通過 -F 後跟檔案資訊發起請求
curl -F '[email protected];type=image/png' http://www.baidu.com/upload
其中,需要注意的是:
使用-F引數時,curl認為是上傳檔案,會預設指定-H Content-Type: multipart/form-datas,表示使用檔案上傳的格式
-F引數指定檔案資訊時,可以指定多個檔案以及檔案型別,多個引數使用;分隔
2、檔案下載
curl 命令中下載檔案的方式有很多種,分別是:
對於請求得到的結果資料,可以使用Linux種的重定向功能儲存到檔案 ... >> index.html
使用-o/-O引數請求檔案並儲存,curl -o a.jpg http://www.baidu.com/b.jpg
請求下載檔案是,可以同時指定-#引數,這樣會顯示檔案下載的進度,使用-s關閉
如果檔案下載過程停止,可以增加-C引數執行檔案的斷點續傳
使用 curl 模擬 GET/POST 請求
curl 命令支援 POST 請求、Cookies、認證等操作,因此還可以很好的應用於開發過程中服務介面請求的模擬。
1、模擬 GET 請求
GET 請求其實就是最簡單的服務請求,是通過 url 拼接的方式攜帶引數資訊,因此直接使用 curl 最簡單的請求方式即可。
開發過程中模擬 GET 請求獲取資料:
curl http://localhost:8080/getUserInfo?id=1。
2、模擬 POST 請求
POST 請求是作為資料提交的一種方式,在請求服務地址時會攜帶引數資訊進行提交,curl 命令中也提供了攜帶引數資訊的方法。
-X,引數後跟請求方式,可以執行 POST 請求
-H,引數後跟字串,可以指定請求頭資訊,如 "Content-Type:application/json" 表示以 json 格式傳輸資料
-d,引數後跟字串,可以通過字串的方式指定請求引數內容,使用-d引數時需要注意
該命令可以使用多次,來分別指定多個引數資訊
也可以使用 -d 'key1=val1&key2=val2' 來一次指定多個引數
如果指定了引數為json型別,則可以使用 -d '{"id":1,"name":"shone"}' 來傳遞一個json物件
使用 -d 引數後,請求型別會預設為POST,此時可以省略 -X 引數的指定
-d引數還可以指定檔案作為引數,使用@後跟檔名的方式,-d "@test.txt"
對於一個完整的POST請求可以是:
curl -H "Content-Type:application/json" -d '{"id":1,"name":"shone"}' http://localhost:8080/queryInfo
3、使用 Cookies
瀏覽器在進行服務請求時,通常會儲存請求資訊到Cookies中,可以使用 -D 引數來指定儲存請求的Cookies
curl -o page1.html -D cookie.txt http://www.baidu.com
curl 命令還可以模擬瀏覽器的請求,使用 -A 指定瀏覽器資訊來模仿瀏覽器發起請求並儲存Cookies
curl -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" -o page.html -D cookie.txt http://mydomain.net
儲存的Cookie資訊,可以在請求時使用-b引數指定攜帶Cookie
curl -b cookie.txt http://www.baidu.com
相關推薦:《Linux視訊教學》
以上就是linux預設安裝curl嗎的詳細內容,更多請關注TW511.COM其它相關文章!