Linux下载命令有哪些?怎么用?

在Linux操作系统中,下载文件是日常运维和开发中常见的操作,系统提供了多种命令行工具来实现高效下载,这些工具各具特色,支持不同的协议(如HTTP、HTTPS、FTP等),并具备断点续传、后台运行、限速下载等实用功能,以下将详细介绍Linux中常用的下载命令及其使用方法。

linux中下载命令
(图片来源网络,侵删)

wget命令

wget是Linux中最经典的下载工具,以其稳定性和强大的功能著称,它支持HTTP、HTTPS、FTP等多种协议,并能够递归下载整个网站目录,wget的基本语法为wget [选项] URL,常用选项包括:

  • -b:后台下载,将日志输出到当前目录的wget-log文件中。
  • -c:断点续传,适用于因网络中断导致的未完成下载。
  • -r:递归下载,可配合-np(不下载父目录)和-k(转换链接)使用,用于镜像网站。
  • -P:指定下载文件保存的目录,如wget -P /path/to/dir URL
  • --limit-rate:限制下载速度,例如wget --limit-rate=100k URL限制为100KB/s。
  • -O:指定输出文件名,如wget -O newname.zip URL

下载一个大型文件并启用断点续传:wget -c -O largefile.zip http://example.com/largefile.zip,若需下载整个网站的前5层目录,可使用wget -r -l 5 -np -k http://example.com

curl命令

curl是一个功能强大的网络传输工具,支持HTTP、HTTPS、FTP、SCP等数十种协议,常用于API测试和数据传输,curl的语法为curl [选项] URL,核心优势在于灵活性和对复杂请求的支持:

  • -o-O:保存输出到文件,-o指定文件名,-O使用URL中的文件名。
  • -L:跟随重定向,适用于短链接或需要跳转的URL。
  • -C -:启用断点续传,与wget的-c类似。
  • -u:提供用户认证信息,如curl -u username:password ftp://example.com/file
  • -d:发送POST请求的数据,常用于API交互,如curl -d "param1=value1" -X POST URL
  • --limit-rate:限速下载,语法同wget。

通过curl下载文件并显示进度条:curl -L -O -# URL,若需下载多个文件,可结合-o指定不同输出名,或通过文件列表批量下载。

linux中下载命令
(图片来源网络,侵删)

aria2命令

aria2是一款轻量级且高速的多协议下载工具,支持HTTP、HTTPS、FTP、BT、磁力链接等协议,尤其适合多线程下载,其核心优势在于高并发和资源占用低,安装后可通过aria2c命令调用:

  • -x:最大并发连接数,默认为16,可设置为aria2c -x 16 URL
  • -s:分片数量,与-x配合使用提升速度,如aria2c -x 16 -s 16 URL
  • -c:启用断点续传。
  • -d:指定下载目录,-o指定文件名。
  • --max-download-limit:限制下载速度,如aria2c --max-download-limit=100k URL
  • -i:从文件中读取URL列表,支持批量下载。

使用aria2下载BT种子:aria2c -t 32 -x 16 -s 16 file.torrent,若需通过磁力链接下载,可直接使用aria2c "magnet:?xt=urn:btih:..."

其他工具

  1. axel:多线程下载工具,语法简单,适合快速下载大文件,常用axel -n 10 URL(10线程)。
  2. lftp:支持FTP/SFTP/HTTP的高级客户端,可通过mirror命令同步目录,如lftp -u user,pass -e "get file; exit" host
  3. rsync:主要用于文件同步和增量备份,但也可通过rsync -avz --progress URL local_dir实现下载。

工具对比

工具支持协议多线程断点续传特色功能适用场景
wgetHTTP/HTTPS/FTP支持递归下载、网站镜像网站爬取、简单下载
curl多协议支持API交互、自定义请求头API测试、复杂请求
aria2多协议+BT支持支持多协议、资源占用低大文件、BT/磁力链接
axelHTTP/HTTPS支持支持简单快速高速HTTP下载
lftpFTP/SFTP/HTTP支持支持目录同步、脚本化服务器文件同步

使用建议

  • 简单下载:优先选择wget或curl,两者预装于多数Linux发行版。
  • 大文件/多线程:使用aria2,通过-x-s参数优化速度。
  • 网站镜像:wget的-r-np组合更高效。
  • API交互:curl的-d-H选项更灵活。
  • 批量下载:aria2支持文件列表,wget可通过-i读取URL文件。

相关问答FAQs

Q1: 如何在Linux中下载一个需要登录的网站文件?
A1: 可使用curl的-u参数提供用户名和密码,例如curl -u username:password -O https://example.com/protected/file.zip,若网站使用Cookie认证,可先通过浏览器获取Cookie,再通过-b参数传入,如curl -b "cookie=value" -O URL,wget则可通过--http-user--http-password指定认证信息。

Q2: 下载过程中如何监控实时速度和进度?
A2: wget默认显示进度条,若需实时速度,可结合-v(详细模式)或使用pv工具(需安装)管道显示,如wget -q -O - URL | pv > file,curl的参数可显示进度条,-w格式化输出速度,例如curl -w "%{speed_download}\n" -O URL,aria2默认显示实时速度和进度,无需额外参数。

linux中下载命令
(图片来源网络,侵删)

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/370331.html<

(0)
运维的头像运维
上一篇2025-09-28 14:17
下一篇 2025-09-28 14:21

相关推荐

  • FTP复制文件命令有哪些?

    FTP(文件传输协议)是一种用于在网络上客户端和服务器之间传输文件的标准协议,它支持两种基本模式:主动模式(Active Mode)和被动模式(Passive Mode),其中被动模式因防火墙兼容性更好而被更广泛使用,在FTP操作中,复制文件通常涉及从本地客户端上传文件到远程服务器,或从远程服务器下载文件到本地……

    2025-11-20
    0
  • FTP命令如何复制文件?

    FTP(File Transfer Protocol)是一种用于在客户端和服务器之间传输文件的协议,广泛应用于文件上传、下载和管理,通过FTP命令,用户可以在命令行界面中执行各种文件操作,其中复制文件是常见的功能之一,虽然FTP本身没有直接的“复制”命令,但可以通过结合上传、下载等操作实现文件复制的目的,本文将……

    2025-11-17
    0
  • FTP如何直接查看文件内容?

    在FTP(File Transfer Protocol)操作中,直接通过FTP命令查看文件内容并不像在本地终端中使用cat或type命令那样简单,因为FTP协议本身主要用于文件传输而非文本内容展示,用户可以通过一些间接方法实现类似功能,结合FTP命令和本地系统工具来查看文件内容,以下是详细的操作方法和相关注意事……

    2025-11-15
    0
  • Linux安装文件命令有哪些?

    在Linux系统中,安装文件是系统管理和日常运维中的常见操作,不同类型的文件(如二进制包、源码包、压缩包等)需要使用不同的命令进行安装,本文将详细介绍Linux系统中安装文件的相关命令,包括包管理工具、源码编译安装、压缩包解压等内容,并通过表格对比不同命令的适用场景和基本用法,最后附上常见问题解答,基于包管理器……

    2025-11-14
    0
  • Maven下载依赖包命令有哪些?

    在使用Maven进行项目开发时,下载依赖包是核心操作之一,Maven通过中央仓库、私服等仓库管理依赖,开发者可以通过命令行或IDE工具触发依赖下载,以下是关于Maven下载依赖包命令的详细说明,包括常用命令、参数说明及实际应用场景,Maven下载依赖包最基础的命令是mvn dependency:resolve……

    2025-11-14
    0

发表回复

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