技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> Linux --> 实用命令行工具详解(一)—curl

实用命令行工具详解(一)—curl

浏览:2042次  出处信息

   开发web应用时经常需要接口调试,有很多现成的工具可以使用,但大部分都比较复杂,太笨重,个人感觉比较好用的就是postman和curl了,基本可以应付各种调试需求

   curl是一个数据传输工具,支持HTTP, HTTPS, FTP, FTPS, TFTP, DICT, TELNET, LDAP or FILE 协议。该命令不支持用户交互

curl www.javaranger.com

   如果要把这个网页保存下来,可以使用-o参数,相当于wget命令

curl -o fileName  www.javaranger.com

   或

curl www.javaranger.com >1.txt

   显示头信息(-I只显示头信息)

curl -i www.javaranger.com

   有的网址是自动跳转的。使用-L参数,curl就会跳转到新的网址。

curl -L www.javaranger.com

   -v参数可以显示一次http通信的整个过程,包括端口连接和http request头信息。

curl -v www.javaranger.com<br /><br />curl --trace www.javaranger.com

   发送post信息(-H是添加请求头, -d是请求体)

curl -H "Content-Type:application/soap+xml; charset=UTF-8" -d@/tmp/feiren http://113.105.64.226/v1/NorthBoundAPIService.asmx<br />

   添加User Agent

curl --user-agent "[User Agent]"  www.javaranger.com

   添加cookie

curl --cookie "name=xxx" www.javaranger.com

   查看接口相应时间

curl -o /dev/null -s -w "%{time_connect}:%{time_starttransfer}:%{time_total}\n" http://www.javaranger.com

   第一个是从命令启动到链接上用的时间

   冒号是分隔符(可以在自己的 -w 模板里头修改这个分隔符,比如可以用\t或者|,自己改改看)

   第二个字段,是开始传输数据所用的时间

   第三个字段,是完成传输所用的时间

   这三个时间对于判断网络状况和系统性能是很有帮助的

   再比较下面两个命令结果的不同:

$ export $SEP='|'<br />$ curl -o 1.txt -s -w "%{time_connect}$SEP%{time_starttransfer}$SEP%{time_total}\n" http://www.javaranger.com</p><p>$ curl -o 1.txt -s -w '%{time_connect}$SEP%{time_starttransfer}$SEP%{time_total}\n' http://www.javaranger.com</p><p>

   结果:

   0.12|3.23|3.35

   0.12$SEP3.23$SEP3.35

   ” “(双引号)包围的字串里头会替换变量

   ‘ ‘单引号里面你的字符串不会被替换。

建议继续学习:

  1. vim几个小技巧(批量替换,列编辑)    (阅读:35680)
  2. ps - 按进程消耗内存多少排序    (阅读:10995)
  3. Rolling cURL: PHP并发最佳实践    (阅读:10104)
  4. 100个常用的linux命令    (阅读:9858)
  5. 每个程序员都应该知道的8个Linux命令    (阅读:9184)
  6. 最受欢迎的10个 Linux 单行命令    (阅读:8707)
  7. curl 命令使用cookie    (阅读:8668)
  8. Linux date 命令获取某日期的前一天    (阅读:8335)
  9. ps 命令常见用法    (阅读:7722)
  10. find命令的一点注意事项    (阅读:7636)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1