Linux如何用wget/curl高效下载文件?

基础下载工具

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头)

高性能下载工具

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线程下载

场景化解决方案

  1. 下载受限资源(需Cookie/Header):

    wget --header="Authorization: Bearer TOKEN" https://api.example.com/data
    curl -H "User-Agent: Mozilla" -O https://example.com/restricted_file
  2. 镜像整站资源

    wget --mirror --convert-links --page-requisites https://example.com
  3. 从密码保护的FTP下载

    wget --ftp-user=USER --ftp-password=PASS ftp://example.com/file.zip

工具对比与选择建议

工具 优势 适用场景
wget 递归下载、断点续传、简单易用 网站镜像、基础下载任务
curl 协议支持广、API交互、灵活 调试API、复杂HTTP请求
aria2 多线程、磁力/BT支持、高效 大文件加速、批量下载
axel 轻量级多线程、资源占用低 替代wget/curl的简单加速场景

安全与最佳实践

  1. 验证文件完整性

    curl -O https://example.com/file.zip
    echo "expected_sha256sum *file.zip" | sha256sum -c -  # 校验SHA256
  2. 避免恶意链接

    • 优先使用HTTPS链接:wget https://...
    • 下载前检查源可信度(如官方源、GitHub Releases)。
  3. 限速防滥用

    wget --limit-rate=200k https://example.com/file.iso  # 限速200KB/s
    aria2c --max-download-limit=1M https://...           # 限速1MB/s

命令行下载是Linux高效操作的基石,掌握wgetcurl满足日常需求,aria2axel应对大文件加速,结合安全实践可确保稳定可靠,对于自动化脚本,推荐wgetcurl;下载大型数据优先选择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 wgetman curl 获取本地帮助)

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7048.html

(0)
酷番叔酷番叔
上一篇 2025年7月12日 08:39
下一篇 2025年7月12日 09:07

相关推荐

  • Linux下用什么命令或工具查看GIF文件?

    在Linux系统中查看GIF文件有多种方式,既包括图形界面下的可视化工具,也有命令行下的元数据查看与处理工具,用户可根据实际需求(如是否需要编辑、是否在无图形界面环境等)选择合适的方法,以下是具体操作方式及工具介绍,图形界面工具(适合日常查看与简单编辑)图形界面工具通过可视化窗口直接显示GIF内容,支持缩放、暂……

    2025年9月17日
    2400
  • Linux C编程中如何实现键盘上下键控制?

    在Linux C程序中实现键盘上下键的交互功能,通常涉及终端模式的设置、输入流的读取以及特殊键码的识别,由于终端默认处于“规范模式”(canonical mode),会缓存输入直到按下回车,无法直接捕获单个按键(如上下箭头),因此需要切换到“非规范模式”(non-canonical mode)并处理转义序列,以……

    2025年10月8日
    800
  • 如何彻底卸载Linux源码软件不崩溃?

    推荐方法:安装时预记录文件列表(最安全)若您在安装时已记录文件路径,可精准卸载:定位安装记录文件通常位于源码目录的install_manifest.txt(常见于CMake项目)或自定义记录文件:# 进入源码编译目录cd /path/to/source-code# 查找记录文件(常见名称)ls -l insta……

    2025年8月4日
    2900
  • 如何在Linux高效转换图片?

    核心工具推荐ImageMagick(全能首选)安装: sudo apt install imagemagick # Debian/Ubuntusudo dnf install imagemagick # Fedora/CentOS基础命令: convert input.jpg output.png # JPG转……

    2025年7月10日
    5500
  • 在Linux系统下如何正确打开Oracle数据库服务?

    在Linux系统下操作Oracle数据库,通常涉及启动数据库实例、监听器以及连接管理工具等步骤,具体操作需根据Oracle版本(如11g、12c、19c等)和安装方式(如RPM、手动安装)略有差异,但核心流程基本一致,以下从环境准备、实例启动、监听器配置、连接验证及常见问题排查等方面详细说明,环境准备与检查在启……

    2025年9月28日
    1900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信