Linux Curl 命令满足你的工作需求

Curl 简介

Curl 是基于 URL 语法在命令行方式下工作的文件传输工具,它支持 FTP,FTPS,HTTP,HTTPS,GOPHER,TELNET,DICT,FILE及LDAP等协议。

Curl 支持 HTTPS 认证,并且支持 HTTPPOST,PUT等方法,FTP上传,kerberos认证,HTTP上传,代理服务器,cookies,用户名/密码认证。

通过 HTTP 代理服务器上传文件到 FTP 服务器等等,功能十分强大。

今日分享一些日常工作中常用的场景

Curl 常用参数

-I 只显示请求头信息

-d HTTP POST方式传送数据, 以json格式

-o 把输出写到该文件中

-s 静默模式。不输出任何东西

-X 指定什么命令,如GET POST

-v 查看详情

-u 设置服务器的用户和密码

-H 要发送到服务端的自定义请求头

-w 完成后输出什么

-b 从文件中读取cookie信息

-F 上传文件

-# 显示进度条
1:curl 命令发送 get 请求

示例:

curl -X GET http://www.xxx.com/search?data=123
2:curl 命令发送 get 请求后统计各阶段耗时

示例:

curl -o /dev/null -s -w "time_namelookup:%{time_namelookup}\ntime_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" www.xxx.com
3:curl 命令发送 post 请求

示例:

curl  www.xxx.com/api/openservice/query/queryProperty -H "Content-Type:application/json" -X POST -d '{"baseCondition": {"propertyId": 1, "dateRange": {"fromDate": "2019-07-04", "toDate": "2019-07-05"}, "adults": 1,"children": 0, "rooms": 1, "channelId": 2, "sellCategories": ["PUBLIC", "NEGOTIATE"]},"extensionCondition": {"rateIds": [], "unableFlag":"False", "currency": "CNY"}, "context": {}}'
4:curl 命令发送 post 请求后统计各阶段耗时

示例:

curl -o /dev/null -s -w "time_namelookup:%{time_namelookup}\ntime_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" www.xxx.com/api/openservice/query/queryProperty -H "Content-Type:application/json" -X POST -d '{"baseCondition": {"propertyId": 1, "dateRange": {"fromDate": "2019-07-04", "toDate": "2019-07-05"}, "adults": 1,"children": 0, "rooms": 1, "channelId": 2, "sellCategories": ["PUBLIC", "NEGOTIATE"]},"extensionCondition": {"rateIds": [], "unableFlag":"False", "currency": "CNY"}, "context": {}}'
5:curl 命令保存文件到本地

示例:

curl -o file.html  http://www.xxx.com/index.html
6:curl 命令登录服务

示例:

curl -u name:passwd http://www.xxx.com
7:curl 命令构造一个请求头

示例:

curl -H "Content-Type:application/json" http://www.xxx.com
8:curl 命令从文件中读取 cookie 信息

示例:

curl -b "cookie.txt" http://www.xxx.com
9:curl 命令上传文件

示例:

curl -b "cookie.txt" -F "file=@/temp/a.txt" http://www.xxx.com/api/upload -v
10:curl 命令下载文件并显示下载进度

示例:

curl -# -o abc.jpg http://www.xxx.com/abc.JPG
11:curl 命令清除 es 里的数据

示例:

curl -XDELETE http://10.8.102.102:9200/entity-beta-ars6_ars-reservation -uadmin:admin   #清理ES

欢迎关注: 无量测试之道公众号,回复: 领取资源

Python+Unittest框架API自动化、

Python+Unittest框架API自动化、

Python+Pytest框架API自动化、

Python+Pandas+Pyecharts大数据分析、

Python+Selenium框架Web的UI自动化、

Python+Appium框架APP的UI自动化、

Python编程学习资源干货、

Vue前端组件化框架开发、

资源和代码 免费送啦~

包含:数据分析、大数据、机器学习、测试开发、API接口自动化、测试运维、UI自动化、性能测试、代码检测、编程技术等。

微信搜索公众号: 无量测试之道,添加关注,让我们一起共同成长 !

猜你喜欢

转载自blog.csdn.net/weixin_41754309/article/details/125576684