如何使用终极命令行下载工具wget

更新并不总是更好,wget命令就是证据。该应用程序于1996年首次发布,至今仍是世界上最好的下载管理器之一。无论你想下载单个文件、整个文件夹,甚至是整个网站的镜像,wget都能让你只需敲击几下键盘就能做到。

当然,并非每个人都使用wget是有原因的:它只是一个命令行应用程序,因此初学者需要一些时间来学习。以下是基本知识,以便您可以开始使用。

如何安装wget

在使用wget之前,您需要安装它。如何执行此操作取决于您的计算机:

默认情况下,大多数(如果不是全部)Linux发行版都附带wget。所以Linux用户不需要做任何事情! MacOS系统不附带wget,但您可以使用Homebrew安装命令行工具。设置好HomeBREW后,只需在终端中运行BREW install wget即可。 Windows用户在传统的命令提示符中不容易访问wget,尽管Cygwin提供了wget和其他GNU实用程序,Windows 10的Ubuntu的Bash shell也附带了wget。

一旦安装了wget,就可以立即从命令行开始使用它。让我们下载一些文件吧!

下载单个文件

让我们从简单的事情开始吧。复制要在浏览器中下载的文件的URL。

现在返回终端,键入wget,后跟粘贴的URL。文件将下载,您将看到实时进度。

相关:如何从Linux终端管理文件:您需要知道的11个命令

请注意,该文件将下载到您终端的当前文件夹,因此,如果您希望将其存储在其他位置,则需要将其CD到其他文件夹。如果您不确定这是什么意思,请查看我们的从命令行管理文件的指南。本文提到了Linux,但是在MacOS系统和运行Bash的Windows系统上概念是相同的。

继续未完成的下载

无论出于何种原因,如果您在下载完成之前停止了下载,请不要担心:Wget可以从它停止的地方继续下载。只需使用此命令:

wget-c文件

这里的关键是-c,这是命令行术语中的“选项”。这个特定的选项告诉wget您希望继续现有的下载。

镜像整个网站

如果你想下载整个网站,wget可以做到这一点。

wget-m http://example.com

默认情况下,这将下载example.com站点上的所有内容,但您可能希望使用更多选项来获得可用的镜像。

--CONVERT-LINKS更改每个下载页面内的链接,以便它们彼此指向,而不是指向Web。 --页面必需品下载样式表之类的东西,因此页面在脱机时看起来是正确的。 --no-parent停止wget下载父站点。因此,如果您想下载http://example.com/subexample,,您最终将不会看到父页面。

把这些选项结合起来,你最终会得到一份你可以在电脑上浏览的任何网站的副本。

请注意,在现代互联网上镜像整个网站将占用大量空间,所以请将其限制在小网站上,除非您拥有几乎无限的存储空间。

下载整个目录

如果您正在浏览FTP服务器并找到要下载的整个文件夹,只需运行:

WGET-r ftp://example.com/folder

本例中的r告诉wget您需要递归下载。如果希望避免下载高于当前级别的文件夹和文件,还可以包括--noparent。

一次下载文件列表

如果您找不到所需下载的整个文件夹,wget仍然可以提供帮助。只需将所有下载URL放入单个TXT文件中即可。

然后使用-i选项将wget指向该文档。就像这样:

wget-i download.txt

这样做,您的计算机将下载文本文档中列出的所有文件,如果您想让大量下载通宵运行,这是很方便的。

再来几个小把戏

我们还可以继续:WGET提供了很多选择。但本教程只是想给您一个起点。要了解有关wget可以做什么的更多信息,请在终端中键入man wget,然后阅读弹出的内容。你会学到很多东西的。

话虽如此,这里有几个我认为很好的其他选择:

如果希望下载在后台运行,只需包含选项-b。 如果您希望wget即使出现404错误也继续尝试下载,请使用选项-t10。这将尝试下载10次;您可以使用任何您喜欢的数字。 如果您想管理您的带宽,选项“--Limit-Rate=200k”会将您的下载速度限制在200kb/s。更改该数字可以更改速率。

这里还有很多东西要学。如果你想获得更高级的体验,你可以尝试下载PHP源代码,或者设置一个自动下载器。

相关文章