curl命令使用
curl命令可以用来构造http请求。参数有很多,常用的参数如下:
通用语法:
curl [option] [URL...]
在处理URL时其支持类型于SHELL的名称扩展功能,如http://www.jbxue.com/archive[1996-1999]/vol[1-4]/part{a,b,c}.html可以生成多个期望的URL
curl的选项功能:
- 不带任何参数时 curl 将返回指定url中的数据并打印在屏幕上
- -u 使用用户名和密码登陆。如curl -uname:passwd URL
- -b/--cookie <name=data> 向服务器提交cookie,若无=则name视为文件名,例如:curl -b cookie.txt www.jbxue.com
- -o out 将指定curl返回保存为out文件,内容从html/jpg到各种MIME类型文件。如curl -o page.html URL
- -d <key=value> 向服务器POST表单数据 例如:curl -d "order=111&count=2" http://www.jbxue.com/buy
- -A/--user-agent <ua> 指定发送请求的用户代理,例如:curl -A My-Agent/1.0.0 www.jbxue.com
- -x ip:port 指定使用的http代理,例如:curl -x 192.168.1.1:8080 www.jbxue.com
- -D head.txt 将服务器的返回的header保存为文件,头部的cookie也可被保存,例如:curl -D header.txt www.jbxue.com
- 如果希望从本地文件中获取表单数据,则在文件名前加@ ,例如:curl -d @data.xml http://www.jbxue.com
- 若希望从标准输入获取则用 curl -d "name=username&passwd=pwd" http://www.jbxue.com
- -L 当页面有跳转的时候,输出跳转到的页面
- -I header信息 当有跳转时,可以通过 curl -L -I URL|grep Location 来确定跳转到的新url地址
- -c <file> 保存服务器的cookie文件
- -e url 设置引用头的值
- -T localfile 向服务器PUT文件 例如:curl -T 1.mp3 www.jbxue.com/upload.php
- -F <key=value> 向服务器POST表单,例如:curl -F "web=@index.html;type=text/html" url.com
- -E cert.pem 指定本地证书
- -H <header:value> 为HTTP请求设置任意header及值。如curl -H "Connection:keep-alive" http://www.jbxue.com
- -X/--request method 用户定义的HTTP请求方法名如 curl -X GET www.baidu.com
- --compressed 采用压缩方式接收返回数据
- --connect-timeout <s> 设置超时时间
- -v 详细输出,包含请求和响应的首部
- --retry num
- --retry timeo 指定重试的次数和间隔
- --tcp-nodelay 打开TCP_NODELAY选项 不进行捎带确认
- -O 按服务器上的名称保存下载的文件
- -r/--range from-to 下载指定range内的数据
- -C 在保存文件时进行续传
环境 变量:http_proxy [protocol://]<host>[:port]
curl命令使用的更多相关文章
- curl命令行使用
curl 命令使用 原文地址:http://blog.sina.com.cn/s/blog_4b9eab320100slyw.html 可以看作命令行浏览器 1.开启gzip请求curl -I h ...
- CURL命令报错:dyld: lazy symbol binding failed: Symbol not found: _SSL_load_error_strings解决办法
Mac OS X 10.11.6, curl 命令报错,错误如下: dyld: lazy symbol binding failed: Symbol not found: _SSL_load_erro ...
- CURL命令详解
curl命令是一个强大的网络工具,它能通过http,ftp等方式下载.上传文件.其中curl远不止这些功能,大家可以通过阅读手册获取更多的信息,类似的工具还有wget. curl命令使用了libcur ...
- limux curl命令
linux curl命令很强大: http://blog.chinaunix.net/uid-14735472-id-3413867.html curl是一种命令行工具,作用是发出网络请求,然后得到和 ...
- linux curl 命令详解,以及实例
linux curl是一个利用URL规则在命令行下工作的文件传输工具.它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称url为下载工具. 一,curl命令参数,有好多我没有用过,也不知道翻 ...
- 使用curl命令操作elasticsearch
使用curl命令操作elasticsearch 大岩不灿 发表于 2015年4月25日 浏览 7,426 次 第一:_cat系列_cat系列提供了一系列查询elasticsearch集群状态的接口.你 ...
- Linux之curl命令详解
url命令是一个功能强大的网络工具,它能够通过http.ftp等方式下载文件,也能够上传文件.其实curl远不止前面所说的那些功能,大家可以通过man curl阅读手册页获取更多的信息.类似的工具还有 ...
- zabbix通过curl命令判断web服务是否正常并自动重启服务
zabbix通过curl命令判断web服务是否正常并自动重启服务 主要思路: 通过curl命令获取服务器响应码,如果正常返回200,不正常返回000 具体命令: curl -I -s -w " ...
- curl 命令行应用
我一向以为,curl只是一个编程用的函数库. 最近才发现,这个命令本身,就是一个无比有用的网站开发工具,请看我整理的它的用法. =================================== ...
随机推荐
- 利用nagios搭建打印机监控服务器
实验背景:公司有很多台HP惠普打印机,管理起来比较麻烦.于是想着能否做个打印机监控服务器,能够快速响应打印机所出现的所有问题.之后上网查了相关资料搭建了一台,使用也没任何问题,于是便拿出来跟大家分享. ...
- 浏览器请求页面时Etag和cache的区别
etag:简单的说就是服务器收到客户端的请求后,根据返回的内容计算出来一个etag值,返回给客户端,当客户端下次再请求相同路径的时候会带上之前的etag值,服务器端会根据这次请求应该返回的内容计算出新 ...
- MongoDB学习笔记(二:入门环境配置及与关系型数据库区别总结)
一.下载及安装MongoDB MongoDB下载官网链接:http://www.mongodb.org/downloads 具体安装步骤教程:http://www.shouce.ren/api/vie ...
- nginx简易入门(转)
相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额.那究竟它有什么作用呢?可能很多人未必了解. 说到反向代理,可能很多人都听说,但具体什么是反向代理,很多人估计就不清楚了 ...
- 面试题:return和finally执行
创建一个包含return和finally的方法:(如下所示) public class Demo { public int get() { int x=1; try { x++; return x; ...
- linux 、 jmeter部署安装
1.安装&配置 可在Linux服务器上利用服务器强大的性能,执行JMeter进行性能测试. 当然,可在Windows机器上先编好测试计划(注意版本匹配,否则可能产生莫名错误),然后下载到Lin ...
- python基础之循环结构以及列表
python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.python IDE的选择 IDE的全称叫做集成 ...
- ubuntu 14.04 ns2.35 ***buffer overflow detected **: ns terminated解决办法
1.按照如下教程安装 Install With Me !: How to Install NS-2.35 in Ubuntu-13.10 / 14.04 (in 4 easy steps) 2.运行一 ...
- codeforces 711E. ZS and The Birthday Paradox 概率
已知一年365天找23个人有2个人在同一天生日的概率 > 50% 给出n,k ,表示现在一年有2^n天,找k个人,有2个人在同一天生日的概率,求出来的概率是a/b形式,化到最简形式,由于a,b可 ...
- js下关于onmouseout、事件冒泡的问题经验小结
问题是这样的:一个div元素要触发onmouseout事件,同时这个div内部还有子元素,于是当鼠标移动到该div的子元素上时,onmouseout事件也被触发了.在要做浮动层效果的时候会经常遇到这个 ...