[实用]送你一个短小精悍的curl命令

目录 技术文章

curl是linux下实用的工具,发送http请求,构造各种头部,用好curl命令是基础技术人员的必修课。

一、我们经常会用到(以下拿头条域名来实验):

仅获取响应头部:curl http://toutiao.com/ -I
获取请求响应的头部:
curl http://toutiao.com/ -vosa

dig下百度获取到百度解析IP:60.29.248.109然后用curl命令,指定到这个IP去请求:
curl http://toutiao.com/ -x 60.29.248.109:80 -vosa

二、来点基础的:

-o (小写字母o) 默认情况下,curl会把整个内容显示在终端(也就是屏幕)上,可以通过-o将内容保存在某个文件下,比较常见的是指定到/dev/null ,类似一个垃圾箱;
-O (大写的O)会根据请求的文件名在本地保存;
-I 只输出响应头部;
-e 用来设定Referer;
-A 用来设定UA头部;
-H 可以用来设定请求的头部(其他模拟头部记不住别的头部就记忆这个,好用!)这个来个例子:

[实用]送你一个短小精悍的curl命令
-H头部使用时候和其他不一样的是需要添加相关的头部名称,比如这里的”Referer:”,但是直接使用-e则不需要;
-r 在发送请求的时候,可以用来指定发送range请求;

三、来点不一样的吧:

curl -s -o /dev/null -w %{time_namelookup}:%{time_connect}:%{time_starttransfer}:%{time_total}-%{http_code}-%{size_download}-%{speed_download}- http://toutiao.com/; date
对应获取到本次curl的dns时间、建连时间、首包时间、总时间、http状态码、下载大小、下载速度;

[实用]送你一个短小精悍的curl命令

单次测试可能存在误差,那我们就多测试几次:

[实用]送你一个短小精悍的curl命令

本次讲的是curl 的-w参数,好的话就转发吧!

点击“关注”本头条号,每天分享一点知识技巧,学习,积少成多,永不止步!