0%

Linux下多线程下载工具Axel

Linux 平台下默认的下载工具是wget,可在慢速或不稳定的网络连接下保持健壮性,如果由于网络问题下载失败,它将继续重试,直到整个文件下载完成;但是wget不支持多线程下载,这里推荐一个axel,可实现对同一个文件建立多个连接,每个连接下载单独的文件片段以更快地完成下载,支持HTTP,HTTPS,FTP,FTPS协议;

安装

源码安装

下载地址https://sourceforge.net/projects/axel2/files/

包管理器安装

看教程说epel源中带有这个工具,但是我Centos 6.8 没发现;于是自已下载一个rpm包安装,推荐下载地址 http://pkgs.org/

使用

基本用法如下:

1
alex [选项][下载目录][下载地址]

参数如下:

1
2
3
4
5
6
7
-s 指定每秒下载最大的比特数(如限速为512KB/s,设置为 -s 512000)
-n 指定同时打开的下载线程数 (如指定10个线程,设置为 -n 10)
-o 指定下载路径(如下载到/tmp目录,设置为 -o /tmp;也可以指定下载后的文件名,如下载后文件名为test.tgz,设置为 -o /tmp/test.tgz)
-S 搜索镜像,并下载
-v 打印更多状态信息
-a 打印简洁的进度信息
-q 不显示下载进度

实例

1
axel -n 10 -a -o /tmp ftp://ftpprd.ncep.noaa.gov/pub/data/nccf/com/gfs/prod/enkf.20170724/12/gdas.t12z.atmf009s.mem011.nemsio

断点续传

如果下载过程中下载中断可以再执行下载命令即可恢复上次的下载进度。axel 默认具有恢复未完成的下载的行为。Axel 在下载文件时定期更新状态文件(扩展名为 .st)。由于某些原因,下载中途停止了?不用担心,只要使用相同的 axel 命令,它将会检查 file 和 file.st,如果找到,它会从停止处恢复下载。

参考:http://man.linuxde.net/axel