curl基于URL的文件传输工具

简介

cURL是一款开源的基于URL的文件传输工具,支持HTTP、HTTPS、FTP等协议,支持POST、cookie、认证、扩展头部、限速等特性。

curl命令用途广泛,比如下载、发送http请求、指定http头部等。

wget是个专职的下载利器,简单,专一,极致;而curl可以下载,但是长项不在于下载,而在于模拟提交web数据,对请求报文进行设置,从而对网页进行调试。

wget支持递归下载,curl不支持。所以区分下来就是下载数据使用wget,网页调试使用curl。

常用功能

curl URL     #下载文件到stdout
curl URL -s/--silent #安静模式,不显示过程也不显示报错
curl URL --silent --progress #显示#号的进度条
curl URL --silent -O #下载数据写入文件,文件名和URL中文件名相同
curl URL --silent -o filename #手动指定文件名
curl URL -C offset #从指定偏移量位置继续下载,offset是字节为单位的整数
curl URL -C - #断点续传
curl URL --referer referer_URL #指定参照页字符串
curl URL --cookie "user=peter;pass=123456" #手动指定并存储cookie
curl URL --cookie-jar cookie_file #从文件中指定cookie
curl URL --user-agent "Mozilla/5.0" #指定用户代理
curl URL -H "Host: www.peter.com" -H "Accept-language: en" #设置多个http头部信息
curl URL --limit-rate 20k #限制下载速度
curl URL --max-filesize bytes #指定可下载的最大文件大小
curl URL -u user:pass #进行密码认证
curl URL -I #只打印响应头部信息
curl URL -k #--insecure 接受不安全的数字证书,例如自签名证书
curl URL -S #--show-error 显示报错,一般curl URL -sS 连用
curl URL -x #--proxy <[protocol://][user:password@]proxyhost[:port]> 使用代理服务器
curl URL -D #--dump-header <file> 将响应头部信息写入某个文件 一般存储cookie就是存储header
curl URL -b #--cookie <name=data> 使用本地cookie,一般是"NAME1=VALUE1; NAME2=VALUE2"键值对格式,也可以 -b <file> 使用cookie文件
curl URL -d #--data <data> 使用POST方法提交数据 通常提交方式是键值对,例如curl URL -d 'user=name' -d 'password=passwd' ,这里注意curl
#会将多个-d参数后面的内容组合成'name=daniel&skill=lousy'这种形式,所以我们自己也可以使用curl URL -d 'name=name&password=passwd'
#形式提交数据; 第二种方法是读取文件数据进行提交例如 curl URL -d @filename
curl URL -X #--request <command> 指定请求方法例如curl URL -X POST
上一篇:用Spring MVC开发简单的Web应用程序


下一篇:从华为数字化转型看IT自动化运维重要性