Linux|最佳命令行下载加速器

news2025/4/9 1:40:54
alt

引言

无论是远程工作还是本地工作,我们经常需要从外部获取信息。在没有其他选择的情况下,使用命令行工具来获取这些信息是一个不错的选择。

本文[1]将介绍一些通过命令行下载内容时最常使用的工具。

Wget

我们首先介绍一个广受欢迎的工具 wget。它是一个网络工具,支持通过 HTTP、HTTPS 和 FTP 协议下载内容。wget 可以在后台或前台运行,这让它在你需要下载大文件时非常有用,即便你已经退出登录,下载也不会中断。

wget 提供了丰富的选项,包括进行需要认证的下载、设置递归下载的深度限制、支持 URL 的正则表达式匹配、允许排除特定内容、从文件中读取 URL 等。wget 的功能非常全面,建议通过运行命令查看其帮助文档来了解更多选项。

$ wget -h
  • wget最基本的下载示例是:
$ wget https://wordpress.org/latest.zip
  • 从文件中列出的 URL 下载的示例。首先是我们的文件列表:
$ cat list.txt

https://wordpress.org/latest.zip
https://downloads.joomla.org/cms/joomla3/3-8-5/Joomla_3-9-4-Stable-Full_Package.zip
https://ftp.drupal.org/files/projects/drupal-8.4.5.zip

然后您可以使用以下命令运行下载:

$ wget -i list.txt
  • 要在后台运行下载,您可以使用:
$ wget -b https://wordpress.org/latest.zip
  • 如果您想使用 wget 结合 FTP 下载单个文件。
$ wget ftp://user:password@host:/path-to-file/file.txt
  • 一个更有用的示例是使用后台和递归模式,以便您可以获得目录中的所有文件和文件夹。
$ wget -br ftp://user:password@ftp-host:/path-for-download/

许多现代 Linux 发行版上都预装了 Wget,但如果您需要安装它,可以使用:

$ sudo apt install wget    # Debian/Ubuntu like distros
# yum install wget         # CentOS/RHEL
# dnf install wget         # Fedora

Curl

curl 是一个功能强大的数据传输工具,能够与服务器进行数据交换。它兼容多种网络协议,包括但不限于 DICT、FILE、FTP、FTPS、GOPHER、HTTP、HTTPS、IMAP、IMAPS、LDAP、LDAPS、POP3、POP3S、RTMP、RTSP、SCP、SFTP、SMB、SMBS、SMTP、SMTPS、TELNET 和 TFTP,根据其官方文档所述。

可以想象,有了这样的支持,curl 的应用场景非常广泛。你可能已经意识到,curl 不仅支持通过代理进行数据传输,还能够处理用户认证、FTP 的文件上传和下载、断点续传等功能。

下面是一些 curl 的使用实例:

  • 下载一个文件:
$ curl -O https://wordpress.org/latest.zip
<./pre>
Download a file to output file by your choice:

$ curl -o wordpress.zip https://wordpress.org/latest.zip
  • 要恢复中断的下载,您可以使用:
$ curl -C - O https://wordpress.org/latest.zip

要安装curl,您可以使用:

$ sudo apt install curl    # Debian/Ubuntu
# yum install curl         # CentOS/RHEL
# dnf install curl         # Fedora

Aria

Aria 是一款多功能的下载管理器,它支持包括 HTTP/HTTPS、FTP/SFTP、BitTorrent 和 Metalink 在内的各种协议。Aria 的一些独特之处在于,它能够同时从多个源点下载文件、处理磁力链接,并且具备完整的 BitTorrent 客户端功能。

作为 BitTorrent 客户端,Aria 支持分布式哈希表(DHT)、对等交换(PEX)、加密传输、磁力链接(Magnet URI)、网页播种、选择性下载以及本地对等体发现等高级特性。

以下提供了一些 Aria2 的基本使用示例:

  • 下载一个 torrent 文件的命令示例
$ aria2c http://releases.ubuntu.com/18.10/ubuntu-18.10-desktop-amd64.iso.torrent
  • 使用文本文件中列出的 URL 下载:
$ aria2c -i downloadurls.txt
  • 恢复未完成的下载:
$ aria2c -c http://releases.ubuntu.com/18.10/ubuntu-18.10-desktop-amd64.iso.torrent
  • 从受密码保护的网站下载:
$ aria2c --http-user=xxx --http-password=xxx https://protectedwebsite.com/file
  • 要安装 Aria2,您可以使用以下命令:
$ sudo apt install aria2      # Debian/Ubuntu
# yum install aria2           # CentOS/RHEL
# dnf install aria2           # Fedora

Axel

我们列表中的第四款下载工具是 Axel,它通过为单个文件建立多个连接来优化下载流程。Axel 能够利用多个下载源进行单一文件的下载。开发者指出,Axel 能够将下载速度提升高达 60%,并且它兼容 HTTP/HTTPS、FTP 和 FTPS 等协议。

我们曾在一篇专门的文章中详细介绍了 Axel,你可以通过这个链接访问:如何在 Linux 系统中使用 Axel 加速 FTP 和 HTTP 下载。

在那篇文章中,你可以找到 wget、HTTP 直接下载与 Axel 在下载时间上的对比分析。

以下是一些使用 Axel 的基本示例:

  • 执行一个简单的下载任务,你可以使用如下命令
$ axel https://wordpress.org/latest.zip
  • 您可以使用相应的选项 --max-speed 或短选项 -s 设置最大下载速度。该值以每秒字节数设置:
$ axel --max-speed=512000 https://wordpress.org/latest.zip
  • 要以不同的名称保存文件,可以使用 -o 选项指定文件名:
$ axel -o wordpress.zip https://wordpress.org/latest.zip

如果您想在 Linux 系统上安装 Axel,请使用以下命令中的相应命令:

$ sudo apt install axel                                  # Ubuntu/Debian
# yum install epel release && yum install axel   # CentOS/RHEL
# dnf install axel                                       # Fedora
Reference
[1]

Source: https://www.tecmint.com/commandline-download-accelerators-for-linux/

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1977830.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用Qt编译modbus

一.编译库文件 1. 创建library项目 2. 选择要配置的编译器 3. 把自动生成的源码都移除&#xff1a;&#xff08;右键单击&#xff0c;选择 remove&#xff09; 4 4. 导入库源码 把源码拷贝到项目目录下&#xff08;.pro 文件所在的目录&#xff09; 5. 修改 configure.js 文…

(计算机网络)物理层

目录 一.基本概念 二.基本术语 三.码元 四.多路复用技术 一.基本概念 1. 2. 3. 4. 5. 6. 7. 8. 9. 二.基本术语 1. 2. 3.早期--公用的电话网传输数据&#xff0c;网络上传的是模拟信号&#xff0c;调制解调器--将数字信号转化成模拟信号&#xff0c;最后&#xff0c;调制解…

Java: 线程安全问题的解决方案(synchronized)

发生原因 要想解决线程安全问题,那么我们首先得知道线程安全问题为什么会发生. 发生原因: 线程在操作系统中是"随机调度,抢占式执行的"[根本原因].多个线程,同时修改同一个变量修改操作不是"原子"的内存可见性问题指令重排序 解决方案 原因1和2,我们很…

htsjdk库FeatureCodec和Feature接口介绍

在 HTSJDK 库中,FeatureCodec 接口和 Feature 接口分别扮演不同的角色,用于处理基因组数据的不同方面。下面是这两个接口的区别和各自的功能: FeatureCodec 接口 主要功能 编码和解码:FeatureCodec 接口的主要职责是定义如何将数据从文件格式解码为 Java 对象(即 Featur…

【C语言】分支与循环(循环篇)——结尾猜数字游戏实现

前言 C语言是一种结构化的计算机语言&#xff0c;这里指的通常是顺序结构、选择结构、循环结构&#xff0c;掌握这三种结构之后我们就可以解决大多数问题。 分支结构可以使用if、switch来实现&#xff0c;而循环可以使用for、while、do while来实现。 1. while循环 C语言中…

[CP_AUTOSAR]_系统服务_DEM模块(三)功能规范之诊断事件定义

目录 1、诊断事件定义1.1、Event priority&#xff08;事件优先级&#xff09;1.2、Event occurrence&#xff08;事件发生计数器&#xff09;1.3、Event kind&#xff08;事件类别&#xff09;1.4、Event destination&#xff08;故障内存&#xff09;1.5、Diagnostic monitor…

2.MonggoDB是什么?

1. 不是什么&#xff1f; 要想知道MongoDB是什么&#xff0c;我们得先搞清楚它不是什么&#xff0c;首先它不是关系数据&#xff0c;不是像下面这样这种格式存储数据。 这个图展示了关系型数据库的常用存储方式&#xff0c;一个表格&#xff0c;里面存储了多行记录&#xff0…

Linux系统中的两个核心进程:`init`和`kthreadd`

文章目录 1 init 进程1.1 基本信息1.2 主要功能1.3 示例 2 kthreadd 进程2.1 基本信息2.2 主要功能2.3 示例 3 对比总结4 用户空间进程与内核线程4.1 用户空间进程特点 4.2 内核线程特点 5 对比总结6 结论参考链接封面 本文详细对比了Linux系统中的两个核心进程&#xff1a; i…

nvm 对node版本的控制

使用nvm切换Node.js版本的步骤如下 nvm list available // 显示可以安装的所有node.js的版本 如果出现空白 问题解决 经过查找nvm的文档&#xff0c;发现&#xff0c;对于中国用户而言&#xff0c;可以切换nodejs或npm的镜像地址来访问&#xff1a; nvm node_mirror https:…

软raid - - udev规则

一、什么是udev FROM AI: udev是Linux 2.6内核及以后版本中引入的一个设备管理框架&#xff0c;它取代了之前的devfs系统。udev以守护进程的形式运行&#xff0c;并且工作在用户空间而不是内核空间。它的主要功能是动态地创建和管理/dev目录下的设备节点&#xff0c;并且能够根…

SAP支出管理,企业成本控制的智能钥匙

在企业运营中&#xff0c;有效的支出管理是确保财务健康和提升竞争力的关键。SAP支出管理系统作为企业资源规划的核心组成部分&#xff0c;提供了一套全面的解决方案&#xff0c;帮助企业实现成本控制、风险管理和合规性监督。实现支出管理流程自动化&#xff0c;并主动管理更多…

蚂蚁笔试0511-编程题

解题思路&#xff1a; 记录0、正数、负数的个数&#xff0c;分类讨论。 解题思路&#xff1a; 有n个位置&#xff0c;每个位置有m个数&#xff0c;所以一共有m^n种情况&#xff0c;每种情况至少包含权值1&#xff0c;也就是全相等是一段&#xff0c;或者说是一个数形成的 从第二…

黑马Java零基础视频教程精华部分_11_面向对象进阶(3)

系列文章目录 文章目录 系列文章目录一、抽象类1、为什么要有抽象类&#xff1f;2、抽象方法3、抽象类4、抽象类和抽象方法定义格式5、注意事项 二、接口1、为什么会有接口&#xff1f;2、接口和抽象类的异同3、接口的定义和使用4、接口中成员的特点5、接口和类之间的关系6、实…

机器学习第五十周周报 CGNN

文章目录 week50 CGNN摘要Abstract0. 概述1. 题目2. Abstract3. 网络结构3.1 状态更新网络3.2 method 4. 文献解读4.1 Introduction4.2 创新点4.3 实验过程 5. 结论6.相关代码CompositeLGNNCompositeGNNcomposite-graph-class小结参考文献 week50 CGNN 摘要 本周阅读了题为Co…

【题解】189. 轮转数组(数组、数学、双指针)

https://leetcode.cn/problems/rotate-array/description/?envTypestudy-plan-v2&envIdtop-interview-150 class Solution { public:void rotate(vector<int>& nums, int k) {k k % nums.size(); // 注意k要取一下模reverse(nums.begin(), nums.end()-k);rev…

常见cms漏洞之ASPCMS

项目地址&#xff0c;自行百度 漏洞复现&#xff0c;使用后台配置文件拿shell 访问后台 http://192.168.177.153/admin_aspcms/login.asp 账号密码已设置成&#xff0c;登录即可 admin 123456

关于Win11无法自动进入休眠问题

最近从win10升到11了 感觉还挺好用的 就是右键有点逆天 主要是为了3k屏连接1080显示器更新的 但是发现彻底无法休眠了&#xff0c;这个还要说的是以前win10睡眠一次就算一次硬盘通电&#xff0c;现在更新后不会了 下面说回休眠 b站浏览一番后发现是22H2隐藏了休眠时间设置&a…

哈希 || unordered系列的关联式容器底层 | 哈希模拟实现 | HashTable代码实现

底层结构 unordered系统的关联式容器之所以效率比较高&#xff0c;是因为其底层使用了哈希结构。 哈希概念 顺序结构以及平衡树中&#xff0c;元素关键码与其存储位置之间没有对应的关系&#xff0c;因此在查找一个元素时&#xff0c;必须经过关键码的多次比较。 顺序查找的…

【机器学习算法基础】(基础机器学习课程)-10-逻辑回归-笔记

一、模型的保存与加载 逻辑回归是一种常见的机器学习算法&#xff0c;广泛用于分类问题。为了在不同的时间或环境下使用训练好的模型&#xff0c;我们通常需要将其保存和加载。 保存模型 训练模型&#xff1a;首先&#xff0c;你需要用你的数据训练一个逻辑回归模型。例如&…

【软考】甘特图

目录 1. 说明2. 图示3. 特点4. 例题4.1 例题1 1. 说明 1.Gantt图是一种简单的水平条形图,它以日历为基准描述项目任务。2.水平轴表示日历时间线(如时、天、周、月和年等)&#xff0c;每个条形表示一个任务&#xff0c;任务名称垂直地列在左边的列中&#xff0c;图中水平条的起…