curl命令常用参数
生活随笔
收集整理的這篇文章主要介紹了
curl命令常用参数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
curl命令常用參數
- curl簡介
- 常用方法
- 將遠程文件下載到本地-o并指定名稱
- 指定請求方式-X
- 顯示響應結果-v
- 攜帶用戶名/密碼-u
- 攜帶請求頭-H
- 查看服務端響應頭 -i
- 只顯示http response的頭信息-I
- 自動跳轉-L
- 模擬dns解析--resolve
- 超時時間
- 綜合應用練習
curl簡介
參考地址:
https://wangchujiang.com/linux-command/c/curl.html
https://segmentfault.com/a/1190000023897623
curl命令 是一個利用URL規則在命令行下工作的文件傳輸工具。它支持文件的上傳和下載,所以是綜合傳輸工具,但按傳統,習慣稱curl為下載工具。作為一款強力工具,curl支持包括HTTP、HTTPS、ftp等眾多協議,還支持POST、cookies、認證、從指定偏移處下載部分文件、用戶代理字符串、限速、文件大小、進度條等特征。
常用方法
將遠程文件下載到本地-o并指定名稱
# 下載遠程文件 ## curl -o 本地路徑/文件名 遠程url curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo指定請求方式-X
# -X post 指定post請求方式 curl -X post http://www.baidu.com/api# -X get 指定get請求方式 curl -X get http://www.baidu.com/api顯示響應結果-v
# -v 顯示響應結果 curl -v baidu.com攜帶用戶名/密碼-u
# -u 輸入賬號密碼 curl -u 用戶名:密碼 baidu.com/login攜帶請求頭-H
參考: https://www.cnblogs.com/netonline/p/8877324.html
# -H 指定自定義請求頭 curl -H "請求頭" baidu.com# 采用-H參數設置http頭中需要訪問的域名,目標地址為ip地址 [root@kubenode1 ~]# curl -H 'Host:nginx-svc.me' http://172.30.200.22查看服務端響應頭 -i
# -i 查看服務端響應頭 curl - i ip地址:端口號# 示例 curl -i baidu.com HTTP/1.1 200 OK Date: Mon, 14 Feb 2022 14:31:38 GMT Server: Apache Last-Modified: Tue, 12 Jan 2010 13:48:00 GMT ETag: "51-47cf7e6ee8400" Accept-Ranges: bytes Content-Length: 81 Cache-Control: max-age=86400 Expires: Tue, 15 Feb 2022 14:31:38 GMT Connection: Keep-Alive Content-Type: text/html<html> <meta http-equiv="refresh" content="0;url=http://www.baidu.com/"> </html>只顯示http response的頭信息-I
## -I 只顯示http response的頭信息 curl -I www.sina.com自動跳轉-L
參考: https://segmentfault.com/a/1190000023897623
有的網站是自動跳轉的,使用 -L 參數,curl就會跳轉到新的網址。
模擬dns解析–resolve
# 或者采用--resolve參數模擬dns解析,目標地址為域名 curl --resolve nginx-svc.me:80:172.30.200.21 http://nginx-svc.me# 或者采用-H參數設置http頭中需要訪問的域名,目標地址為ip地址 curl -H 'Host:nginx-svc.me' http://172.30.200.22## -s/--silent 靜默模式。不輸出任何東西 ## -k/--insecure 允許不使用證書到SSL站點 ## –resolve 模擬dns解析 curl -sk --resolve translate.googleapis.com:443:142.250.0.90超時時間
使用curl時,有兩個超時時間:一個是連接超時時間,另一個是數據傳輸的最大允許時間。
- 連接超時時間用 --connect-timeout 參數來指定;
- 數據傳輸的最大允許時間用 -m 參數來指定。
例如:
# 連接超時時間為10秒,最大允許傳輸時間為20秒 curl --connect-timeout 10 -m 20 "http://XXXXXXX"連接超時的話,出錯提示形如:
curl: (28) connect() timed out!
數據傳輸的最大允許時間超時的話,出錯提示形如:
curl: (28) Operation timed out after 2000 milliseconds with 0 bytes received
綜合應用練習
# 遠程觸發Jenkins自動構建 ## -X post 指定post請求方式 ## -v 顯示響應結果 ## -u 輸入賬號密碼 ## -H 指定自定義請求頭 curl -X post -v -u admin:admin -H "Jenkins-Crumb:88a12946e078" http://192.168.70.131:8080/jenkins/job/ProOne/build?token=自定義token總結
以上是生活随笔為你收集整理的curl命令常用参数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hexo+Next用aplayer做播放
- 下一篇: 桥梁局部计算的ansa建模教程2——钢锚