当前位置: 首页 > 科技观察

从Linux终端下载文件的2种方法

时间:2023-03-13 21:02:48 科技观察

如果你被困在Linux终端,比如在服务器上,如何从终端下载文件?Linux中没有下载命令,但是有几个Linux命令可以用来下载文件。在此终端提示中,您将了解在Linux中使用命令行下载文件的两种方法。我在这里使用的是Ubuntu,但除了安装之外,其余命令同样适用于所有其他Linux发行版。使用wget命令从Linux终端下载文件wget可能是Linux和类UNIX系统最常用的命令行下载管理器。您可以使用wget下载单个文件、多个文件、整个目录甚至整个网站。wget是非交互式的,可以轻松地在后台工作。这意味着您可以轻松地在脚本中使用它,甚至可以构建像uGet下载管理器这样的工具。让我们看看如何使用wget从终端下载文件。安装wget大多数Linux发行版都预装了wget。它在大多数发行版存储库中也可用,您可以使用发行版的包管理器轻松安装它。在基于Ubuntu和Debian的发行版上,您可以使用apt包管理器命令:sudoaptinstallwget要使用wget下载文件或网页,您只需提供文件或网页的URL。它将在您所在的目录中以其原始名称下载文件。wgetURL要下载多个文件,您必须将它们的URL保存在文本文件中,并将该文件作为wget的输入,如下所示:wget-idownload_files.txt下载文件wget的不同名称您会注意到,网页几乎总是在wget中保存为index.html。给下载的文件一个自定义名称是个好主意。你可以在下载时使用-O(大写字母O)选项来提供输出文件名:wget-OfilenameURL使用wget下载一个文件夹假设你正在浏览一个FTP服务器,你需要下载整个目录,你可以使用递归选项-r:wget-rftp://server-address.com/directory使用wget下载整个网站是的,你绝对可以做到。您可以使用wget镜像整个网站。当我说下载整个站点时,我指的是整个面向公众的站点结构。尽管您可以直接使用镜像选项-m,但最好添加:--convert-links--page-requisiteswget-m--convert-links--page-requisiteswebsite_address额外提示:如果您出于某种原因恢复未完成的下载按CTRL-C中止下载,可以使用选项-c恢复之前的下载:wget-c在Linux命令行中使用curl下载文件与wget一样,curl也是最常用的下载命令之一Linux终端中的文件。curl的使用方法有很多种,这里我只关注简单的下载。安装curl虽然curl没有预先安装,但它在大多数发行版的官方存储库中都可用。您可以使用发行版的包管理器安装它。要在Ubuntu和其他基于Debian的发行版上安装curl,请使用以下命令:sudoaptinstallcurl使用curl下载文件或网页如果您使用curl而URL中没有任何选项,它将读取文件并将其打印在终端上。要在Linux终端使用curl命令下载文件,必须使用-O(大写字母O)选项:curl-OURL在Linux中,使用curl下载多个文件相对简单。您只需要指定多个URL:curl-OURL1URL2URL3请记住,curl并不像wget那样简单。wget可以将网页保存为index.html,但是curl会报错远程文件没有网页的名字。您必须按照下一节中所述使用自定义名称保存它。下载具有不同名称的文件这可能会造成混淆,但是如果您想为下载的文件指定一个自定义名称(而不是原始名称),您有时必须使用-o(小写O)选项:curl-ofilenameURL,curl没有按预期下载文件,您必须使用选项-L(用于位置)才能正确下载。这是因为有时链接会重定向到其他链接,并且使用选项-L它会跟随最终链接。使用curl暂停和恢复下载与wget一样,您也可以使用curl的-c选项恢复暂停的下载:curl-cURL总结与往常一样,在Linux中有多种方法可以做同样的事情。从终端下载文件也不例外。wget和curl只是Linux中最流行的两个文件下载命令。像这样的命令行工具还有很多。基于终端的网络浏览器,如elinks、w3m等,也可用于在命令行下载文件。就个人而言,对于简单的下载,我更喜欢wget而不是curl。它更简单,不会让您感到困惑,因为您可能很难理解为什么curl没有以预期格式下载文件。