基础下载工具
wget – 全能下载器
- 安装(若未预装):
# Debian/Ubuntu sudo apt install wget # CentOS/RHEL sudo yum install wget
- 基础用法:
wget https://example.com/file.zip # 下载文件到当前目录 wget -O custom_name.zip https://example.com/file.zip # 重命名文件
- 高级功能:
- 断点续传:
wget -c https://example.com/large_file.iso
- 后台下载:
wget -b https://example.com/file.zip
- 递归下载整个网站:
wget -mk https://example.com
- 断点续传:
curl – 数据传输利器
- 安装:
sudo apt install curl # Debian/Ubuntu sudo yum install curl # CentOS/RHEL
- 基础用法:
curl -O https://example.com/file.txt # 下载文件(保留原名) curl -o custom_file.txt https://example.com/file.txt # 自定义文件名
- 高级功能:
- 支持协议广泛(HTTP/HTTPS/FTP/SCP):
curl -u user:pass ftp://example.com/file.zip # FTP认证下载
- 测试API响应:
curl -I https://example.com
(仅显示HTTP头)
- 支持协议广泛(HTTP/HTTPS/FTP/SCP):
高性能下载工具
aria2 – 多线程加速
- 安装:
sudo apt install aria2 # Debian/Ubuntu sudo dnf install aria2 # Fedora
- 多线程下载(显著提升速度):
aria2c -x 16 https://example.com/large.iso # 启用16线程
- 断点续传与批量下载:
aria2c -c -i urls.txt # 从urls.txt读取多个链接,支持续传
axel – 轻量级多线程
- 安装:
sudo apt install axel # Debian/Ubuntu
- 基础用法:
axel -n 10 https://example.com/file.iso # 10线程下载
场景化解决方案
-
下载受限资源(需Cookie/Header):
wget --header="Authorization: Bearer TOKEN" https://api.example.com/data curl -H "User-Agent: Mozilla" -O https://example.com/restricted_file
-
镜像整站资源:
wget --mirror --convert-links --page-requisites https://example.com
-
从密码保护的FTP下载:
wget --ftp-user=USER --ftp-password=PASS ftp://example.com/file.zip
工具对比与选择建议
工具 | 优势 | 适用场景 |
---|---|---|
wget |
递归下载、断点续传、简单易用 | 网站镜像、基础下载任务 |
curl |
协议支持广、API交互、灵活 | 调试API、复杂HTTP请求 |
aria2 |
多线程、磁力/BT支持、高效 | 大文件加速、批量下载 |
axel |
轻量级多线程、资源占用低 | 替代wget/curl的简单加速场景 |
安全与最佳实践
-
验证文件完整性:
curl -O https://example.com/file.zip echo "expected_sha256sum *file.zip" | sha256sum -c - # 校验SHA256
-
避免恶意链接:
- 优先使用HTTPS链接:
wget https://...
- 下载前检查源可信度(如官方源、GitHub Releases)。
- 优先使用HTTPS链接:
-
限速防滥用:
wget --limit-rate=200k https://example.com/file.iso # 限速200KB/s aria2c --max-download-limit=1M https://... # 限速1MB/s
命令行下载是Linux高效操作的基石,掌握wget
、curl
满足日常需求,aria2
或axel
应对大文件加速,结合安全实践可确保稳定可靠,对于自动化脚本,推荐wget
或curl
;下载大型数据优先选择aria2
。
引用说明:
- GNU Wget手册:https://www.gnu.org/software/wget/manual/
- curl官方文档:https://curl.se/docs/
- aria2参数详解:https://aria2.github.io/manual/en/html/
- Linux man pages(终端输入
man wget
或man curl
获取本地帮助)
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7048.html