教你学会Linux命令行下载文件的正确姿势

系统 Linux
在本文中,我们讨论了Linux下两种命令行方法的基本用法,您可以使用它们下载文件。

[[394339]]

 Linux命令行比GUI提供了更多的灵活性和控制力。与GUI相比,许多人更喜欢使用命令行,因为它比GUI更加易于使用和快捷。使用命令行可以更轻松地使用一行自动执行任务。另外,它比GUI使用更少的资源。

下载文件是一项日常任务,通常每天执行,其中包括ZIP,TAR,ISO,PNG等文件类型。您可以使用命令行终端简单快速地执行此任务。只需要使用键盘即可。因此,今天,我将向您展示如何在Linux中使用命令行下载文件。通常有两种已知的方法可以做到这一点,即使用wget和curl工具。对于本文,我将使用Ubuntu 20.04 LTS来描述该过程。但是相同的命令也可以在其他Linux发行版(如Debian,Gentoo和CentOS)上运行。

使用Curl下载文件

Curl可用于通过多种协议传输数据。它使用Curl支持许多协议,包括HTTP , HTTPS , FTP , TFTP , TELNET,SCP等。您可以下载任何远程文件。它也支持暂停和恢复功能。

首先,您需要安装curl。

安装curl

通过按Ctrl + Alt + T组合键在Ubuntu终端中启动命令行应用程序。然后输入以下命令以使用sudo安装curl。 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install curl 

当提示[sudo] linuxmi 的密码:时请输入密码。

安装完成后,输入以下命令下载文件。

使用源文件名下载并保存文件

要使用与原始源文件相同的名称将文件保存在远程服务器上,请使用-O(大写O),然后使用curl,如下所示:

  1. $ curl -O [URL] 

除了-O外,您还可以指定“ –remote-name”,如下所示。两者的工作原理相同。

用其他名称下载并保存文件

如果要下载文件并将其保存为与远程服务器中文件名不同的名称,请使用-o(小写的o),如下所示。当远程URL在URL中不包含文件名时,这将很有用,如下例所示。 

  1. $ curl –o [filename] [URL] 

[filename]是输出文件的新名称。

 

  1. curl --remote-name https://github.com/chrishunt/color-schemes/archive/master.zip  
  2. curl -o linuxmi https://github.com/chrishunt/color-schemes/archive/master.zip 

下载多个文件

要下载多个文件,请使用以下语法输入命令:

  1. $ curl -O [URL1] -O [URL2] 

从FTP服务器下载文件

要从FTP服务器下载文件,请使用以下语法输入命令: 

  1. $ curl -O ftp://ftp.linuxmi.com/www.linuxmi.com.zip 

要从经过用户身份验证的FTP服务器下载文件,请使用以下语法: 

  1. $ curl -u [ftp_user]:[ftp_passwd] -O [ftp_URL] 

暂停并继续下载

在下载文件时,您可以使用Ctrl + C手动将其暂停,或者有时由于某种原因它会自动被中断和停止,您可以恢复它。导航到您先前下载文件的目录,然后使用以下语法输入命令: 

  1. $ curl –c [选项] [URL] 

使用Wget下载文件

使用wget,您可以从Web和FTP服务器下载文件和内容。Wget是www和get的组合。它支持FTP,SFTP,HTTP和HTTPS等协议。它还支持递归下载功能。如果您要下载整个网站以供脱机查看或生成静态网站的备份,则此功能非常有用。另外,您可以使用它从各种Web服务器检索内容和文件。

安装wget

通过按Ctrl + Alt + T组合键在Ubuntu终端中启动命令行应用程序。然后输入以下命令以使用sudo安装wget。 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install wget 

当提示您输入密码时,输入sudo密码。

使用wget下载文件或网页

要下载文件或网页,请打开终端并以以下语法输入命令: 

  1. $ wget [URL] 

要保存单个网页,请使用以下语法输入命令: 

  1. $ wget [URL] 

下载其他名称的文件

如果要下载和保存文件的名称与原始远程文件的名称不同,请使用-O(大写O),如下所示。这对您很有用,尤其是当您下载自动以名称“ index.html”保存的网页时。

要下载其他名称的文件,请使用以下语法输入命令: 

  1. $ wget -O [文件名] [URL] 

通过FTP下载文件

要从FTP服务器下载文件,请使用以下语法键入命令: 

  1. $ wget [ftp_link] 

要从经过用户身份验证的FTP服务器下载文件,请使用以下语法: 

  1. $ wget -u [ftp_user]:[ftp_passwd] -O [ftp_URL] 

递归下载文件

您可以使用递归下载功能来下载指定目录下的所有内容,无论是网站还是FTP站点。要使用递归下载功能,请使用以下语法输入命令: 

  1. $ wget –r [URL] 

下载多个文件

您可以使用wget下载多个文件。创建一个带有文件URL列表的文本文件,然后使用以下语法的wget命令下载该列表。 

  1. $ wget –i [filename.txt] 

例如,我有一个名为“linuxmi.txt”的文本文件,其中有两个要使用wget下载的URL列表。您可以在下图中看到我的文本文件内容。

我将使用以下命令下载文本文件中包含的文件链接: 

  1. $ wget –i linuxmi.txt 

使用包含网址的文件作为下载列表

您会看到它正在一个接一个地下载两个链接。

暂停和恢复下载

您可以按Ctrl + C暂停下载。要恢复暂停的下载,请转至先前下载文件的目录,并在wget之后使用– c选项,如以下语法所示: 

  1. $ wget -c filename.zip 

使用以上命令,您会注意到下载已从暂停位置恢复。

总结

在本文中,我们讨论了Linux下两种命令行方法的基本用法,您可以使用它们下载文件。需要注意的一件事是,如果您在下载文件时未指定目录,则文件将下载到您正在使用的当前目录中。 

 

责任编辑:庞桂玉 来源: 良许Linux
相关推荐

2017-03-03 10:10:15

2015-12-16 16:01:13

2021-05-20 12:16:17

Linux命令Axel

2010-02-04 15:17:48

Linux wget

2023-12-28 10:44:09

2023-03-28 08:40:22

命令行JSON用法

2010-06-07 14:45:37

Linux下载工具

2009-08-04 10:06:37

如何进入linux命令linux系统linux

2016-08-04 10:27:40

Linux文件下载网站浏览工具

2023-02-07 09:49:26

Linux命令行合并文件

2018-01-11 15:31:39

命令Linux关机

2010-09-01 14:23:54

Linux命令行开发

2009-12-24 14:51:39

Linux命令行

2019-03-25 21:12:06

Linux命令行下载加速器

2010-03-04 14:32:24

Python自动下载文

2009-12-23 14:14:09

Linux高级命令行

2009-08-07 10:33:53

linux命令行乱码linux命令行解决方式

2019-12-10 10:03:18

Linux命令行工具

2017-09-05 08:57:02

Linux命令行技巧

2009-12-09 09:25:52

Linux命令行svn命令
点赞
收藏

51CTO技术栈公众号