官方下载 - 88必发娱乐官网园

基于URL的文件传输工具(cURL) 7.57.0 绿色版

基于URL的文件传输工具(cURL) 软件介绍 Soft content
基于URL的文件传输工具(cURL) 7.57.0 绿色版

cURL是一个带有命令行的URL语法传输文件,支持FTP,FTPS,TFTP和HTTP,HTTPS协议,或Gopher,Telnet,字典,文件。curl是一个利用URL语法在命令行方式下工作的文件传输工具
curl支持HTTPS证书,HTTP POST,HTTP PUT,FTP上传,HTTP表单上传,代理,cookies,用户+密码身份验证(基本,摘要式,NTLM,协商,Kerberos身份...),恢复文件传输,代理和隧道总线负载其他有用的技巧。
cURL是自由和开放的软件操作系统下的各种编译。

常用参数

curl命令参数很多,这里只列出我曾经用过、特别是在shell脚本中经常用到过的那些。

-a/--append 上传文件时,附加到目标文件

-A:随意指定自己这次访问所宣称的自己的浏览器信息


-b/--cookie cookie字符串或文件读取位置,使用option来把上次的cookie信息追加到http request里面去。


-c/--cookie-jar 操作结束后把cookie写入到这个文件中


-C/--continue-at  断点续转


-d/--data   HTTP POST方式传送数据


    --data-ascii 以ascii的方式post数据

     --data-binary 以二进制的方式post数据

     --negotiate使用HTTP身份验证

     --digest使用数字身份验证

     --disable-eprt禁止使用EPRT或LPRT

     --disable-epsv禁止使用EPSV

-D/--dump-header 把header信息写入到该文件中


     --egd-file  为随机数据(SSL)设置EGD socket路径


     --tcp-nodelay     使用TCP_NODELAY选项


-e/--referer  指定引用地址


-F/--form   模拟http表单提交数据


     --form-string 模拟http表单提交数据


-G/--get    以get的方式来发送数据


-H/--header

指定请求头参数


    --ignore-content-length  忽略的HTTP头信息的长度


-i/--include     输出时包括protocol头信息


-I/--head 仅返回头部信息,使用HEAD请求


-k/--insecure  允许不使用证书到SSL站点


-K/--config    指定的配置文件读取


-l/--list-only   列出ftp目录下的文件名称


    --limit-rate 设置传输速度


     --local-port  强制使用本地端口号


-m/--max-time 指定处理的最大时长


     --max-redirs    设置最大读取的目录数


     --max-filesize  设置最大下载的文件总量


-o/--output   指定输出文件名称


-O/--remote-name  把输出写到该文件中,保留远程文件的文件名


-v/--verbose  小写的v参数,用于打印更多信息,包括发送的请求信息,这在调试脚本是特别有用。


-s/--slient 减少输出的信息,比如进度


--connect-timeout 指定尝试连接的最大时长


-x/--proxy 指定代理服务器地址和端口,端口默认为1080


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


-r/--range 检索来自HTTP/1.1或FTP服务器字节范围


   --range-file 读取(SSL)的随机文件


-R/--remote-time   在本地生成文件时,保留远程文件时间


    --retry   指定重试次数


    --retry-delay   传输出现问题时,设置重试间隔时间


    --retry-max-time  传输出现问题时,设置最大重试时间


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


-S/--show-error  显示错误


    --socks4 用socks4代理给定主机和端口


    --socks5 用socks5代理给定主机和端口


    --stderr


-x/--proxy 在给定的端口上使用HTTP代理


-X/--request 指定什么命令。curl默认的HTTP动词是GET,使用-X参数可以支持其他动词。


-T/--upload-file 指定上传文件路径

curl 介绍和基本用法

curl是一个广泛使用的用来上传和下载的命令行工具,当然严格来讲,它还可以有别的用途。对于测试来讲,它是Web相关测试非常实用的工具,包括debugging,使用起来非常方便。而且另一方面,因为它是纯命令行的工具,所以也可以非常方便的作为一个组件集成到automation或者其他的测试框架里面,将HTTP/HTTPS/FTP相关的上传和下载等任务交给它。

最近因为在做web service相关的测试,用到了curl,觉得还不错,顺便给大家介绍一下。

official site: http://curl.haxx.se/ , 目前最新的版本是7.20.0。


基本的用法示例

curl http://www.google.com

curl -o f1 ftp://user:pwd@myftp/Ricky/test.ini

curl dict://dict.org/d:test

下面主要介绍一下常用的参数,关于这方面,可以查看它自带的帮助文档。

-V show the version of curl

C:/Tools/curl-7.20.0>curl -V

curl 7.20.0 (i386-pc-win32) libcurl/7.20.0 OpenSSL/0.9.8l zlib/1.2.3

Protocols: dict file ftp ftps http https imap imaps ldap pop3 pop3s rtsp smtp smtps telnet tftp

Features: AsynchDNS Largefile NTLM SSL SSPI libz



-o [filename], save content to a file

-O use the same name

curl -o g.html www.google.com

curl -O http://www.google.com/intl/en_ALL/images/logo.gif


-i, Include the HTTP-header in the output     
curl -i http://www.google.com

-u username:password

curl -u user:pwd ftp://myftp/Ricky/test.ini

-d parameters

curl http://www.yahoo.com/login.cgi?user=nick&password=12345

curl -d "user=nick&password=12345" http://www.yahoo.com/login.cgi


-x  proxy_ip:port, access with proxy

curl -i -x myproxy:8080 -o google_proxy.html http://www.google.com

HTTP/1.1 302 Found

Via: 1.0 myproxy

Content-Length: 222

Date: Mon, 22 Mar 2010 14:15:48 GMT

Location: http://www.google.com.tw/

Content-Type: text/html; charset=UTF-8

Cache-Control: private

Set-Cookie: PREF=ID=aa97c3734c862ddf:TM=1269267348:LM=1269267348:S=4FEEGAPNu2FN2lho; expires=Wed, 21-Mar-2012 14:15:48 GMT; path=/; domain=.google.com

Set-Cookie: NID=32=MXKkZjgjiNGVNnPv9w384COa2KJZOLu5v9_5coX_N1tJtaa97-dJUxb7DCz90vQsm0fLEPg0Ee3nXv1yDDcE3ZN0sOu7mq9-mjB9CL0okXGjiIvox2FTcw0HBV7hBaLC; expires=Tue, 21-Sep-2010 14:15:48 GMT; path=/; domain=.google.com; HttpOnly

Server: gws

X-XSS-Protection: 0


302 Moved

The document has moved

.


-r [start-end], such as "-r 0-1024"

curl -i -r 0-1024 -o rfc1.txt http://xml.resource.org/public/rfc/bibxml3/rdf/item.I-D.6man-pmip6-ind.rdf

header:

HTTP/1.1 206 Partial Content

Date: Mon, 22 Mar 2010 13:50:46 GMT

Server: Apache/2.2.15 (Debian)

Last-Modified: Mon, 09 Mar 2009 23:02:11 GMT

ETag: "148be6-466-464b79fe1a2c0"

Accept-Ranges: bytes

Content-Length: 1025

Content-Range: bytes 0-1024/1126

Content-Type: application/rdf+xml


note: not all web server support partial content, or it will response all even you try to get part

curl -i -r 0-1024 http://www.sina.com.cn -o sina_part1.htm

it will give you all the page.

-k insecure SSL , will not check the cert

curl -k https://ip:8445

-T upload a file with FTP

curl -T curl.html -u user:pwd ftp://myftp/Ricky/

execute once again will overwrite


-F/--form , use for http post

curl -F password=@/etc/passwd www.mypasswords.com

You can also tell curl what Content-Type to use by using 'type=', in a manner similar to:

curl -F "web=@index.html;type=text/html" url.com  


最后顺便说一下,如果是用来做HTTP的测试和调试,希望有GUI的话,也有不少其它的工具可以选择,包括Fiddler,JMeter和Firefox的tamper data插件。


创e提示:
  • * 推荐迅雷下载+WinRAR解压;软件通过百度杀毒+毒霸+瑞星+360卫士扫描,问题软件请从评论反馈
  • * 本站为交流分享平台,资源以官方下载为主,来源于作者官方和网友的提交,仅供分享学习之用,如触犯您的权利敬请:来信申诉