curl命令可以实现http post或者get的请求,是linux下的命令行工具

1.1.直接请求url,打印标准输出

1.2.使用-o参数,可以标准输出到指定的位置

[root@VM-3-10-13 ~]# curl https://www.baidu.com -o /tmp/baidu.tmp
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2443 100 2443 0 0 12587 0 --:--:-- --:--:-- --:--:-- 12658

可以看到整个下载的数据大小和时间

1.3. --head显示url的header信息

[root@VM-3-10-13 ~]# curl  --head https://www.baidu.com
HTTP/1.1 200 OK
Server: bfe/1.0.8.18
Date: Tue, 21 Mar 2017 02:17:37 GMT
Content-Type: text/html
Content-Length: 277
Connection: keep-alive
Last-Modified: Mon, 13 Jun 2016 02:50:01 GMT
ETag: "575e1f59-115"
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Pragma: no-cache
Accept-Ranges: bytes

1.4. -x 使用http代理访问

1.5.cookie

curl -c /tmp/cookies https://www.baidu.com   #接收保存cookie
curl -b /tmp/cookies http://www.baidu.com    #发送cookie
curl -b "k1=v1;k2=v2" http://www.baidu.com #发送cookie

1.6.发送数据

以get方式提交:

 curl -G  -d "username=qiangqiang.chang&password=xxxxxx" http://jumpserver.i.beebank.com/login/

以post方式提交:

curl  -d "username=qiangqiang.chang&password=xxxxxx" http://jumpserver.i.beebank.com/login/

1.7.http header处理

设置http请求头信息

curl -A 'Mozilla/5.0' http://www.baidu.com    #设置User-Agent
curl -e " http://jumpserver.i.beebank.com/login/" http://jumpserver.i.beebank.com #设置Referer
curl -H "Connection:keep-alive \n User-Agent: Mozilla/5.0" http://www.aiezu.com #设置自定义的头信息

http header处理:

[root@linux-node1 ~]# curl -I http://www.baidu.com   #获取header信息
HTTP/1.1 200 OK
Server: bfe/1.0.8.18
Date: Tue, 21 Mar 2017 03:22:52 GMT
Content-Type: text/html
Content-Length: 277
Last-Modified: Mon, 13 Jun 2016 02:50:04 GMT
Connection: Keep-Alive
ETag: "575e1f5c-115"
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Pragma: no-cache
Accept-Ranges: bytes
curl -D  /tmp/header1.tmp -s http://www.baidu.com  #将相应头信息保存到指定的文件中

1.8.登录认证

curl -u qianngqiang.chang:xxxxx http://jumpserver.i.beebank.com/

  

curl命令解析的更多相关文章

  1. curl命令常见用法汇总 good

    curl是一种命令行工具,作用是发出网络请求,然后得到和提取数据,显示在"标准输出"(stdout)上面. curl是一个强大的命令行工具,它可以通过网络将信息传递给服务器或者从服 ...

  2. CURL --- 命令行浏览器CURL

    CURL --- 命令行浏览器CURL   CURL --- 命令行浏览器   CURL? 嗯,说来话长了~~~~ 这东西现在已经是苹果机上内置的命令行工具之一了,可见其魅力之一斑 1)二话不说,先从 ...

  3. Ubuntu命令用法详解——curl命令

    简介: cURL(CommandLine Uniform Resource Locator)是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行.它支持文件上传和下载,所以是综合传输工 ...

  4. windows下使用curl命令 && 常用curl命令

    什么是curl命令? curl是利用URL语法在命令行方式下工作的开源文件传输工具.它被广泛应用在Unix.多种Linux发行版中,并且有DOS和Win32.Win64下的移植版本. 如何在windo ...

  5. curl命令大全

    curl 命令行工具的使用及命令参数说明 curl是一个开源的用于数据传输的命令行工具与库,它使用URL语法格式,支持众多传输协议,包括:HTTP.HTTPS.FTP.FTPS.GOPHER.TFTP ...

  6. 学习笔记之 curl 命令用法详解

    [前言]     本文翻译和整理自 Linux-2.6.32 中和 curl 相关的 Manual Page 描述文档. 文档目的仅在提醒读者所遗忘的知识点,故在整理时削弱了阅读流畅性,适用于对 cu ...

  7. CURL命令测试网站打开速度

    curl -o /dev/null -s -w %{time_namelookup}:%{time_connect}:%{time_starttransfer}:%{time_total} http: ...

  8. 如何使用curl命令指定ip访问url

    有时我们需要测试一个url,但域名并没解析,这时为了一个简单的测试而写host或去做域名解析,显然这并不高效,而有些域名甚至是正式的域名,因此我们可有使用curl命令进行测试 方法一 curl url ...

  9. Linux curl 命令详解

    命令概要 该命令设计用于在没有用户交互的情况下工作. curl 是一个工具,用于传输来自服务器或者到服务器的数据.「向服务器传输数据或者获取来自服务器的数据」 可支持的协议有(DICT.FILE.FT ...

随机推荐

  1. 通过mysqlclient操作MySQL数据库

    一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外,一般的l ...

  2. delphi版本对应

    delphi 7 delphi 8delphi 2005 ----- 9delphi 2006 ----- 10 delphi 2007 ----- 11delphi 2009 ----- 12 de ...

  3. Delphi获取其他exe程序版本号

    delphi获取Exe文件版本信息的函数 Type TFileVersionInfo = Record FixedInfo:TVSFixedFileInfo; {版本信息} CompanyName:S ...

  4. c语言数据类型(二)

    char 类型 1.char 变量 常量 char c; 定义一个char变量 c = ‘a’   'a'字符常量 char 的本质就是一个整数,只有一个字节大小的整数 2.printf 输出char ...

  5. tips:Java的Random类和Random函数

    tips:Java的Random类和Random函数! 随机数是一个很有趣的东西,在java中可以通过下面这2种方法得到: (1)Random类: Random类是java.util.Random这个 ...

  6. Tomcat+Nginx+Redis+MySQL实现反向代理、负载均衡、session共享

    一.环境准备 时间同步 关闭防火墙 联通网络,配置yum源 软件包链接:https://pan.baidu.com/s/1qYbtpnQ 二.安装nginx 1.解决依赖关系 [root@nginx- ...

  7. Spring中@Component的作用

    今天在写程序的时候看见一个以前没有见过的注解(@Component),在网上查找过后,经过实践,决定把它记录下来. 1.@controller 控制器(注入服务) 用于标注控制层,相当于struts中 ...

  8. django之视图系统 views.py-->主要内容(FBV和CBV、dispath、request对象和request.FILES、JsonResponse)

    一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应. 一 视图的实现可以基于两种方法: 1 基于函数的形式 FBV 使用装饰器装饰FBV  直接在上 ...

  9. 安装e(fx)clipse到Eclipse (JavaFX工具)

    转载自:https://www.yiibai.com/javafx/install-efxclipse-into-eclipse.html 想要在 Eclipse 中开发 JavaFX,那么可安装 J ...

  10. Java执行js代码

    在做项目中有时候需要用到Java调用js文件执行相应的方法 在JDK1.6添加了新的ScriptEngine类,允许用户直接执行js代码. import org.junit.Test; import ...