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 'file=@test.png;type=image/png' http://www.baidu.com/upload其中,需要注意的是:使用-F參數時,curl認為是上傳文件,會預設指定-H Content-Type: multipart/form-datas,表示使用檔案上傳的格式-F參數指定檔案資訊時,可以指定多個檔案以及檔案類型,多個參數使用;分隔
2、檔案下載curl 指令中下載檔案的方式有很多種,分別是:
curl -o a.jpg http://www.baidu.com/b.jpg
使用curl 模擬GET/POST 請求
1、模擬GET 請求
GET 請求其實就是最簡單的服務請求,是透過url 拼接的方式攜帶參數訊息,因此直接使用curl 最簡單的請求方式即可。 開發過程中模擬GET 請求取得資料:curl http://localhost:8080/getUserInfo?id=1。
2、模擬POST 請求
POST 請求是作為資料提交的一種方式,在請求服務地址時會攜帶參數資訊提交,curl 指令中也提供了攜帶參數資訊的方法。也可以使用 -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嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!