前言:
目前朋友们对“curl 断点续传”大约比较看重,朋友们都需要学习一些“curl 断点续传”的相关资讯。那么小编在网摘上网罗了一些对于“curl 断点续传””的相关知识,希望看官们能喜欢,咱们一起来学习一下吧!零、 curl命令介绍
curl是用于在服务器之间传输数据的命令行工具,可以下载或者上传文件 、获取服务器内容、调用服务器接口等等。并且curl工具支持多种协议,包括:DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP.
用法:
curl [option] URL一、下载并保存到文件
在控制台输出指定url的内容
curl
将url中的内容保存到文件timewentby.com 文件中
curl > timewentby.com
同时我也可以使用 -o 选项来保存指定的文件
效果同上
curl -o timewenby.html
我们也可以使用 -O (大写的O),来保存文件不过保存的文件名为url最后的文件名或者会报错。
本案例中下载的文件名为882.html
curl -O二、静默输出
如果你不想curl显示处理的详情或者错误信息,请使用 -s 选项吧。
例如:我们使用获取一个不存在的域名
curl iloveyou520.top
使用 -s 以后
curl -s iloveyou520.top.com三、 同时下载多个文件
只显示错误信息不显示其他任何详情(这是curl默认的放肆),可以使用 -s -S
curl -s -S
同时下载两个文件 使用多个 -O (大写O)
curl -O -O
如果使用 -o(小写o),请在-o后面跟要保存的文件名。
四、处理URL转发
当我们访问的域名存在302转发的使用默认是访问不到的,可以使用-L 选择加入转发
curl -L timewentby.com五、显示调试信息
$ curl -v timewetnby.com$ curl --trace info timewentby.com六、 显示请求头信息
a . 只显示请求头信息
curl -I
b. 既显示请求头信息同时也显示内容
curl -i七、 发送POST请求
-H : 指定发送header参数,这里是指定Content-Type:application/json
-X :执行请求方法,可以是GET、POST、PUT、DELETE等,默认为GET
-A 或者 --user-agent : 指定 user-agent,例如:-A "Mozilla/5.0 (Android; Mobile; rv:35.0) Gecko/35.0 Firefox/35.0"
--data 或者 -d : 指定发动给服务器的数据,如果使用--data或者-d,则默认发送方法为POST。 默认的 content-type application/x-www-form-urlen‐coded。
可以使用多个-d,例如 -d "name=zxy" -d "age=18",但是最后发送请求时会进行合并成类似 -d "name=zxy&age=18"。
-d @foobar : 代表请求参数从foobar文件中读取
-d - : 代表请求参数从标准输入读取
curl -H "Content-Type:application/json" -X POST --data '{"number":1,"phone":"136xxxxxx46","taskid":140}'八、 保存头部信息
-D 或者 --dump-header : 保存协议的头部信息到指定的文件
打印内容,并将http响应头信息保存的当前目录的head文件中
curl -D head > timewentby.html九、 保存cookie和读取cookie
-c 或者 --cookie-jar : 将cookie保存到指定的文件中,如果不存在cookie不会写入文件(文件不会保存)。
-b 或者 --cookie : 读取cookie,可以从-c 参数保存的文件中读取也可以从-D 参数保存的文件中读取。 也可以后跟 -b "name1=value1;name2=value2"格式的数据
保存cookie
curl -c "cookie"
读取cookie
curl -b "cookie"
或者
curl -b "cookie1=value1"十、 设置代理下载文件
-x 或者 --proxy : 设置下载代理。例如: -x "timewentby.com:3059" . 默认端口为1080.默认协议为http
curl -x "timewentby.com:3059"十一、 断点下载
--limit-rate : 限制下载最大速度/秒,例如:--limit-rate 10m 最大每秒下载10M。 可用的单位 b或者B,k 或者 K , m或者M,g或者G
-C : 断点续传
curl -C download_URL
或者
curl -C - download_URL十二、 用户名密码验证下载文件
curl -u username:password download_URL十三、 FTP服务器下载/上传/删除文件
a. FTP服务器下载文件
curl -u ftpuser:password -O
或者
curl -u ftpuser:password -o index.html
b. FTP服务器上传文件
# 上传单个curl -u ftpuser:password -T linuxtechi.txt 上传多个文件curl -u ftpuser:password -T "(linuxtechi1.txt linuxtechi2.txt)"
c. FTP服务器删除文件
curl -X 'DELE linuxtechi.zip' --user ftpuser:password十四、 关于SSL证书验证、警告问题
a. 验证SSL证书
curl --cacert new-ca.crt download_URL
b. 忽略SSL证书警告
curl -k download_url
标签: #curl 断点续传