CURL 部分命令

-b, --cookie <data> Send cookies from string/file
//发送cookie
// curl --cookie "name=xxx;xxx=32323" http://localhost/opt.php
	 
-d, --data <data>   HTTP POST data
//POST 数据
//示例:curl -X POST -d "xx=222&tt[]=90&tt[]=89" http://localhost/opt.php
 
-F, --form <name=content> Specify HTTP multipart POST data
//上传示例curl --form upload=@HttpDump.log --form press=OK http://localhost/opt.php
	 
-i, --include       Include protocol response headers in the output
//显示http response的头信息
//示例: curl -i|--include www.baidu.com

-o, --output <file> Write to file instead of stdout
//(写入或者保存文件)
示例:curl -o|--output baidu.html https://www.baidu.com
 
-X, --request <command> Specify request command to use
//指定要使用的请求命令,GET|POST|PUT|DELETE...

--trace <file>  Write a debug trace to FILE
//:curl --trace xx.txt www.baidu.com

-A, --user-agent <name> Send User-Agent <name> to server
//curl -A "Mozilla/5.0 (Android; Mobile; rv:35.0) Gecko/35.0 Firefox/35.0" http://www.baidu.com

-v, --verbose       Make the operation more talkative(显示一次http通信的整个过程,包括端口连接和http request头信息)

### 使用 `curl` 命令进行网络测速 #### DNS 解析时间和 TCP 连接时间 当使用 `curl` 执行网络测速时,可以通过 `-w` 参数定制输出格式以获取详细的性能统计数据。例如,要测量 DNS 查找时间和 TCP 握手时间,可以运行以下命令: ```bash curl -o /dev/null -s -w "DNS Lookup Time: %{time_namelookup}, Connect Time: %{time_connect}\n" https://www.example.com ``` 这条命令将隐藏标准输出并将结果重定向到 `/dev/null`,仅显示 DNS 查询耗时 (`%{time_namelookup}`) 和建立连接所需的总时间 (`%{time_connect}`)[^1]。 #### 数据传输时间 进一步扩展上面的例子,还可以加入其他重要指标如预传输准备时间和第一个字节到达客户端的时间: ```bash curl -o /dev/null -s -w "Pre-transfer time: %{time_pretransfer}, Start transfer time: %{time_starttransfer}\n" https://www.example.com ``` 这里增加了 `%{time_pretransfer}` 表示从开始直到准备好发送数据前的所有必要协商完成所需要的时间,以及 `%{time_starttransfer}` 显示的是首次收到有效负载的第一个字节之前经历的全部延迟[^2]。 #### 总下载时间与速度 对于评估整体表现来说,知道整个事务处理周期长短也很有用处。这包括了所有先前提到的部分再加上实际接收内容所需花费的时间段。下面这个例子展示了如何获得这些信息连同平均下载速率一起呈现出来: ```bash curl -o /dev/null -s -w "Total time: %{time_total}s, Speed download: %{speed_download}bytes/s\n" https://www.example.com/largefile.bin ``` 该命令最后部分提供了总的请求持续期(`%{time_total}`),单位为秒;同时还给出了平均每秒钟成功取得的数据量大小(`%{speed_download}`),其计量单位是字节数/秒[^3]。 --- ### 注意事项 尽管如此强大,但需要注意的是,由于 HTTP 协议本身的特性决定了单次调用可能不足以代表真实的用户体验质量水平,因此建议多次重复试验取平均值得出结论更为可靠一些。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值