运维工作中,常常需要下载文件,因为网站下载速度限制或者网络等原因导致下载让人无法忍受,所以今天推荐这款多线程下载工具--axel,下载文件时可以替代curl、wget。
Axel tries to accelerate the download process by using multiple connections per file, and can also balance the load between different servers.
Axel tries to be as light as possible, so it might be useful on byte-critical systems.
Axel supports HTTP, HTTPS, FTP and FTPS protocols.
github:https://github.com/axel-download-accelerator/axel
CentOS 的 yum 中本来是不包含 axel 这个软件包的,如果要使用需要先添加 epel 拓展
yum -y install epel-release yum -y install axel
axel [options] url1 [url2] [url...]
选项
--max-speed=x , -s x 最高速度x --num-connections=x , -n x 连接数x --output=f , -o f 下载为本地文件f --search[=x] , -S [x] 搜索镜像 --header=x , -H x 添加头文件字符串x(指定 HTTP header) --user-agent=x , -U x 设置用户代理(指定 HTTP user agent) --no-proxy , -N 不使用代理服务器 --quiet , -q 静默模式 --verbose ,-v 更多状态信息 --alternate , -a Alternate progress indicator --help ,-h 帮助 --version ,-V 版本信息
如果我要从 Thunderbird 的官方网站下载一个最新版本的 Thunderbird 二进制包,那么我们就可以使用 axel 来下载。
在我们获得了下载地址之后执行:
axel -n 10 -o /axel/ -a https://download-installer.cdn.mozilla.net/pub/thunderbird/releases/45.2.0/linux-x86_64/zh-CN/thunderbird-45.2.0.tar.bz2
axel 将会按照我设置的10个线程来下载 Thunderbird
如果下载过程中下载中断可以再执行下载命令即可恢复上次的下载进度。