curl命令恢复中断下载
时间:2020-01-09 14:16:11 来源:igfitidea点击:
如何在Linux或类似Unix的系统上使用curl命令恢复失败的下载?
您可以使用curl命令继续获取部分下载的文件。
您需要传递-C或--continue-at <offset>选项以给定的偏移量恢复先前的文件传输。
curl恢复下载
COMMAND命令的语法如下,以便使用curl命令自动找出在何处/如何恢复传输:
curl -C url
或者
curl -L -O -C url
或者
curl -L -o'filename-here'-C url
在此示例中,完成由curl命令的先前实例启动的下载:
curl -L -O -C - http://ftp.ussg.iu.edu/linux/centos/6.5/isos/x86_64/CentOS-6.5-x86_64-bin-DVD1.iso
如果当前目录中有一个名为CentOS-6.5-x86_64-bin-DVD1.iso的文件,则curl将假定它是远程文件的第一部分,并将要求服务器继续从等于的偏移量检索。
本地文件的长度。
因此,这将节省时间和带宽。
另一个例子
您可以以给定的偏移量继续进行先前的文件传输。
给定的偏移量是将从源文件的开头算起的确切字节数,然后再将其传输到目标。
语法为:
curl -C偏移量网址
在此示例中,使用以下命令检索ifdata-welcome-0.png文件:
## Get first 20000 bytes ## curl -o file.png --header "Range: bytes=0-20000" http://www.theitroad.local/media/images/misc/static/2012/11/ifdata-welcome-0.png ## Resume at 20001 offset and download the rest of the file ## curl -o file.png -C 20001 http://www.theitroad.local/media/images/misc/static/2012/11/ifdata-welcome-0.png ## View an image file using a local image viewer ## ls -lh file.png open file.png
ls命令的示例输出:
-rw-r--r--@ 1 Hyman wheel 30K Feb 28 23:24 file.png
curl选项
- -L如果找到HTTP 3xx状态代码,请遵循位置。例如,重定向URL。
- -O将输出写入本地文件,例如我们获得的远程文件。仅使用远程文件的文件部分,路径被切断。
- -C继续/恢复先前的文件传输。
-C offsetAT
在给定的偏移量处继续/恢复先前的文件传输。-o'filename'
将输出写入/保存到文件名,而不是标准输出/屏幕。