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支持包括HTTPHTTPSftp等众多协议,还支持POSTcookies认证、从指定偏移处下载部分文件、用户代理字符串限速、文件大小、进度条等特征。

常用方法

将远程文件下载到本地-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就会跳转到新的网址。

## -L 自动跳转到新的网址
curl -L www.sina.com

模拟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命令常用参数相关推荐

  1. CentOS6.9下ssh密钥登录配置步骤(免密码登录)和ssh-keygen 命令常用参数

    密钥登录步骤(免密码登录) ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式.其中口令(密码)认证方式是我们最常用的一种,出于安全方面的考虑,介绍密钥认证方式登录到linux/unix的 ...

  2. linux中vim内容定位,Linux运维行走江湖必备之:vim命令常用参数

    原标题:Linux运维行走江湖必备之:vim命令常用参数 vim是Linux运维日常工作中最常用的命令之一,vim命令的参数有很多,我们选用一些常用的命令参数,足以对付日常的文本编辑工作,如果日后有需 ...

  3. ping命令常用参数

    ping命令常用参数 简述ping命令原理和作用 Linux下ping常用参数 Ubuntu安装ping命令 ping指定次数 -c 间隔秒数-i 指定发包字节数-s 存活数值-t ping域名很久才 ...

  4. free命令常用参数详解

    free命令常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在运维期间我们会经常去查看服务器硬件信息,比如说内存,大家可能知道看内存用"[root@yinzh ...

  5. linux下的arp刷新命令详解,linux arp 命令常用参数详解

    linux arp 命令常用参数详解 linux arp 命令常用参数详解 显示和修改地址解析协议(ARP)使用的"IP 到物理"地址转换表. ARP -s inet_addr e ...

  6. 全面掌握ping命令(四)ping命令常用参数

    参数可以对命令的功能进行扩展,ping命令的参数比较多,常用的主要有以下几个: (1)ping IP地址 –t 连续不停对IP地址发送ICMP数据包,直到被用户以Ctrl+C中断. 如:ping 19 ...

  7. xargs命令常用参数和常见用法

    xargs命令的作用,是将标准输入转为命令行参数. xargs命令的格式如下. xargs [-options] [command] 真正执行的命令,紧跟在xargs后面,接受xargs传来的参数. ...

  8. linux中的ps命令常用参数-个人

    ps命令是什么? ps命令能够给出当前系统中进程的快照.它能捕获系统在某一时间的进程状态.如果想要不断更新查看这个状态,可以配合watch命令或使用top命令 ps命令支持三种语法格式: Unix风格 ...

  9. linux 7 postconf,postconf 命令常用参数

    团队开发-极速蜗牛-NABC模型 特点:益智,操作简单. N(need):手机小游戏,可以让大家打发无聊的时间,比如:排队打饭,课间休息,等公交等地铁,拿出手机玩玩小游戏. A(approach):基 ...

最新文章

  1. windows计划任务启动bat执行java文件
  2. mysql同步row模式_ROW模式的SQL无法正常同步的问题总结
  3. 3D数学基础:图形与游戏开发---随笔二
  4. 2018年第九届蓝桥杯 - 省赛 - Java大学A组 - A.复数幂
  5. mysql调试.net_需要有关使用.NET和MySQL调试应用程序的帮助
  6. 【Python 必会技巧】获取字典中(多个)最大值(value)的键(key)
  7. 【Flink】 Flink 应用资源分配问题排查思路
  8. 微课|玩转Python轻松过二级(1.3节):编码规范与代码优化建议1
  9. hdu 1708 (字符串,Fibonacci )
  10. Ubuntu中Qt5.7.0无法输入中文
  11. regex example
  12. cept源代码目录结构详解_知识树(转)
  13. 构造一个日期类java,java 日期类
  14. 代码整洁之道读书笔记----第二章---命名--第一节-名副其实
  15. 【数学建模】评价模型
  16. STM32F412 串口接收不到数据的问题
  17. Windows7内部版本7601此Windows副本不是正版黑屏怎么办!!!
  18. WIN7下安装WIN2003系统
  19. JPA中@Basic注解详解
  20. pr系统兼容性报告不支持视频驱动程序解决办法

热门文章

  1. MATLAB实现一阶RC滤波器
  2. 几种常见的RC滤波器-RC低通滤波器
  3. IDEA实现逆向工程
  4. shellcode的简介和编写
  5. 《港联证券》半导体复苏预期“抢跑”产业现实 细分市场缓慢回温
  6. 【整理】WB蛋白样品制备常见问题大全
  7. vue+django进行前后端分离开发
  8. 电容基础知识简介--作用、参数和类型
  9. Python项目实践:蒙特卡罗方法计算圆周率
  10. js三型防水涂料_JS聚合物水泥防水涂料(III型)