• curl


    curl详解

    用法:curl [options ...] <url>
    选项:(H)仅表示HTTP / HTTPS,(F)表示仅限FTP
         --anyauth选择“任何”认证方法(H)
     -a,--append上传时追加到目标文件(F / SFTP)
          - 基本使用HTTP基本认证(H)
         --cacert FILE CA证书验证对等体(SSL)
         --capath DIR CA目录以验证对等(SSL)
     -E,--cert CERT [:PASSWD]客户端证书文件和密码(SSL)
         --cert-type TYPE证书文件类型(DER / PEM / ENG)(SSL)
          - 密码LIST要使用的SSL密码(SSL)
          - 压缩请求压缩响应(使用deflate或gzip)
     -K,--config FILE指定要读取的配置文件
         --connect-timeout SECONDS允许连接的最长时间
     -C, - 继续 - 在OFFSET恢复传输偏移
     -b,--cookie STRING / FILE从(H)读取Cookie的字符串或文件
     -c,--cookie-jar FILE操作后将cookie写入此文件(H)
         --create-dirs创建必需的本地目录层次结构
         --crlf在上传时将LF转换为CRLF
         --crlfile FILE从给定文件获取PEM格式的CRL列表
     -d, - 数据DATA HTTP POST数据(H)
          - 数据 - ASCII数据HTTP POST ASCII数据(H)
          - 数据二进制数据HTTP POST二进制数据(H)
         --data-urlencode DATA HTTP POST数据网址编码(H)
          - 指定STRING GSS-API委派许可
          - 最小使用HTTP摘要身份验证(H)
          - 禁用eprt使用EPRT或LPRT(F)
          - 可以使用EPSV(F)抑制
     -D,--dump-header FILE将头文件写入此文件
         --egd-file随机数据(SSL)的FILE EGD套接字路径
         --engine ENGINGE加密引擎(SSL)。 “ - 引擎列表”列表
     -f,--fail在HTTP错误(H)上静默失败(根本不输出)
     -F,--form CONTENT指定HTTP多部分POST数据(H)
         --form-string STRING指定HTTP多部分POST数据(H)
         --ftp-account DATA帐号数据字符串(F)
         --ftp-alternative-to-user命令字符串替换“USER [name]”(F)
         --ftp-create-dirs如果不存在则创建远程目录(F)
         --ftp方法[MULTICWD / NOCWD / SINGLECWD]控制CWD使用(F)
         --ftp-pasv使用PASV / EPSV而不是PORT(F)
     -P,--ftp-port ADR使用带有给定地址而不是PASV(F)的端口
         --ftp-skip-pasv-ip跳过PASV(F)的IP地址
         --ftp-pret在PASV之前发送PRET(对于drftpd)(F)
         --ftp-ssl-ccc认证后发送CCC(F)
         --ftp-ssl-ccc模式ACTIVE / PASSIVE设置CCC模式(F)
         --ftp-ssl-control需要SSL / TLS进行ftp登录,清除传输(F)
     -G,--get使用HTTP GET(H)发送-d数据
     -g,--globoff使用{}和[]禁用URL序列和范围
     -H,--header LINE自定义标头传递到服务器(H)
     -I,--head仅显示文档信息
     -h,--help这个帮助文本
         --hostpubmd5 MD5十六进制编码的主机公钥的MD5字符串。 (SSH)
     -0,--http1.0使用HTTP 1.0(H)
         --ignore-content-length忽略HTTP Content-Length头
     -i,--include在输出中包含协议头(H / F)
     -k,--insecure允许连接到没有证书的SSL站点(H)
          - 接口INTERFACE指定要使用的网络接口/地址
     -4,--ipv4将名称解析为IPv4地址
     -6,--ipv6将名称解析为IPv6地址
     -j,--junk-session-cookies忽略从文件读取的会话cookie(H)
          - 休眠时间SECONDS保持性探针之间的间隔
         --key KEY私钥文件名(SSL / SSH)
          - 键型TYPE私钥文件类型(DER / PEM / ENG)(SSL)
         --krb LEVEL启用具有指定安全级别的Kerberos(F)
         --libcurl文件转储libcurl此命令行的等效代码
          - 极限速率限制传输速度到这个速率
     -l,--list-only仅列出FTP目录的名称(F)
          - 本地端口RANGE强制使用这些本地端口号
     -L, - 位置跟随重定向(H)
          - 位置信任(如位置),并发送授权给其他主机(H)
     -M, - 手动显示完整手册
         --mail - 从这个地址FROM邮件
          - mail-rcpt TO Mail to this receiver(s)
         --mail-auth AUTH原始电子邮件的发起人地址
         --max-filesize BYTES要下载的最大文件大小(H / F)
         --max-redirs NUM允许的最大重定向数(H)
     -m, - 最大时间SECONDS允许传输的最长时间
         --metalink将网址定义为metalink XML文件
          - 谈判使用HTTP协商认证(H)
     -n,--netrc必须读取.netrc的用户名和密码
         --netrc可选使用.netrc或URL;覆盖-n
         --netrc-file FILE设置要使用的netrc文件名
     -N,--no-buffer禁止缓冲输出流
         --no-keepalive禁用在连接上的keepalive使用
         --no-sessionid禁用SSL会话ID重用(SSL)
         --noproxy不使用代理的主机列表
         --ntlm

    输入编码 -f gb2312,输出编码-t utf-8

    |grep 检索目标命令

    检索 title、meta、content等信息,并显示

    curl http://www.qq.com|iconv -f gb2312 -t utf-8| grep -E "(<title>|<meta name=|meta content=)"

    |iconv 命令

    iconv命令是运行于linux平台的文件编码装换工具。当我们在linux系统shell下通过curl命令或者wget命令获取一个网页的源代码,当网页的编码与当前操作系统坏境的设置的编码不同时,就会发现网页中有很多乱码。如在网页"meta"标签"charset"属性值设置为"gb2312"的http://www.baidu.com百度首页,在系统坏境变量"$LANG"值为"en_US.UTF-8"的linux系统即会产生中文乱码现象。这时我们可以尝试使用iconv命令进行编码装换,让中文不在是乱码。如下命令是处理百度在系统坏境变量"$LANG"值为"en_US.UTF-8"的linux系统乱码的问题的解决方案之一:

    curlhttp://www.baidu.com|iconv -fgb2312 -t utf-8

    当然,你也通过改变系统坏境变量与百度首页的"charset"值一致,也可以解决此乱码问题,如下命令:

    set LANG="gb2312"

    export LANG

    curl http://www.baidu.com

    iconv命令的详细语法:

    iconv [选项..] [文件..]
    选项:
    -f 输入编码
    -t 输出编码
    -l 列出所有已知的编码
    -o 输出文件

    [root@localhost /]# iconv -h
    Usage: iconv [-c] [-s] [-f fromcode] [-t tocode] [file ...]
    or:    iconv -l
  • 相关阅读:
    软件过程管理读书笔记02
    交叉验证
    oracle两张表数据匹配,Oracle-left join两表关联只取B表匹配到的第一条记录
    oracle批量新增
    oracle聚合函数XMLAGG用法简介
    form表单导致url连接重定向问题处理
    请求200,返回没内容,360可以看到response内容(待看),nginx返回内容被截取
    jsonp请求返回前面带有个null
    oracle日期转换的一些坑
    Java中将List<String>转化为以,分割的字符串或相反(转载)
  • 原文地址:https://www.cnblogs.com/shabake/p/6833430.html
Copyright © 2020-2023  润新知