数据科学工厂 发表于 2024-11-10 19:36:04

适用于 Linux 的最佳命令行下载加速器

![](data/attachment/forum/plugin_zhanmishu_markdown/202411/54a1e563e08781eec11c1116fa1e3067_1731238538_1624.png)

## 引言

当远程甚至本地工作时,您通常可能需要从外部源获取内容。要获得此类内容,尤其是当您没有任何其他选择时,您将需要使用命令行工具来完成工作。

在[本文](https://www.tecmint.com/commandline-download-accelerators-for-linux/ "Source")中,将回顾一些最广泛使用的通过命令行下载内容的工具。

## Wget

将介绍一款非常受欢迎的下载工具——wget。它能够通过 HTTP、HTTPS 和 FTP 协议下载文件。wget 既可以在后台也可以在前台运行,非常适合在需要长时间下载时保持连接,即使您已经注销也能继续工作。

wget 提供了许多高级功能,包括支持身份验证下载、设置递归下载的深度限制、接受 URL 的正则表达式匹配、排除特定文件、从文件中批量导入 URL 等。由于 wget 的选项非常丰富,因此非常建议您查阅其帮助文档,以便更好地了解和使用这些功能。

```sh
wget -h
```

wget最基本的下载示例是:

```sh
wget https://wordpress.org/latest.zip
```

从文件中列出的 URL 下载的示例。首先是的文件列表:

```sh
$ 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
```

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

```sh
$ wget -i list.txt
```

要在后台运行下载,您可以使用:

```sh
$ wget -b https://wordpress.org/latest.zip
```

如果您想使用 wget 结合 FTP 下载单个文件。

```sh
$ wget ftp://user:password@host:/path-to-file/file.txt
```

一个更有用的示例是使用后台和递归模式,以便您可以获得目录中的所有文件和文件夹。

```sh
$ wget -br ftp://user:password@ftp-host:/path-for-download/
```

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

```sh
$ 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 支持代理、用户身份验证、FTP 上传/下载、文件传输恢复等等。

以下是使用curl的一些示例:

- 下载文件:

```sh
$ 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
```

- 要恢复中断的下载,您可以使用:

```sh
$ curl -C - O https://wordpress.org/latest.zip
```

您可以在此处查看更多有用的curl示例:有关如何在Linux中使用curl的15个技巧。

- 要安装curl,您可以使用:

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

## Aria2

Aria 是另一个多协议下载工具。 Aria 支持 HTTP/HTTPS、FTP/SFTP BitTorrent 和 Metalink。它与其他软件相比的一些特点是它支持同时从多个位置下载文件、磁力链接以及功能齐全的 BitTorrent 客户端。

作为 BitTorrent 客户端,它支持 DHT、PEX、加密、Magnet URI、网络播种、选择性下载和本地对等发现。

请随意查看 Aria2 下载管理器文章以了解更详细的用法。下面你可以看到 aria2 基本用法的几个例子:

- 下载种子文件:

```sh
$ aria2c http://releases.ubuntu.com/18.10/ubuntu-18.10-desktop-amd64.iso.torrent
```

- 使用文本文件中列出的 URL 下载:

```sh
$ aria2c -i downloadurls.txt
```

- 恢复未完成的下载:

```sh
$ aria2c -c http://releases.ubuntu.com/18.10/ubuntu-18.10-desktop-amd64.iso.torrent
```

- 从受密码保护的网站下载:

```sh
$ aria2c --http-user=xxx --http-password=xxx https://protectedwebsite.com/file
```

- 要安装 Aria2,您可以使用以下命令:

```sh
$ sudo apt install aria2      # Debian/Ubuntu
# yum install aria2         # CentOS/RHEL
# dnf install aria2         # Fedora
```

## Axel

列表中的第四个下载实用程序是 Axel,它尝试通过对一个文件使用多个连接来改进下载过程。它可以使用多个下载位置进行一次下载。据开发人员介绍,Axel 可以将下载速度提高 60%,并且支持协议:HTTP/HTTPS、FTP 和 FTPS。

在另一篇文章中回顾了 Axel,您可以在这里找到:如何使用 Axel 作为下载加速器来加速 Linux 中的 FTP 和 HTTP 下载。

在上面的文章中,您可以查看 wget、HTTP download 和 Axel 之间的一些下载时间比较。

- 要使用 Axel 执行简单下载,您可以使用以下命令:

```sh
$ axel https://wordpress.org/latest.zip
```

- 您可以使用相应的选项 --max-speed 或短选项 -s 设置最大下载速度。该值以每秒字节数为单位设置:

```sh
$ axel --max-speed=512000 https://wordpress.org/latest.zip
```

- 要以不同的名称保存文件,可以使用 -o 选项指定文件名:

```sh
$ axel -o wordpress.zip https://wordpress.org/latest.zip
```

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

```sh
$ sudo apt install axel                                  # Ubuntu/Debian
# yum install epel release && yum install axel   # CentOS/RHEL
# dnf install axel                                       # Fedora
```
页: [1]
查看完整版本: 适用于 Linux 的最佳命令行下载加速器