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

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

时间:2023-03-18 14:50:03 科技观察

Linux命令行比GUI提供了更多的灵活性和控制力。许多人更喜欢使用命令行而不是GUI,因为它比GUI使用起来更容易、更快捷。使用命令行可以更轻松地通过一行自动执行任务。另外,它使用的资源比GUI少。下载文件是一项日常任务,通常每天执行一次,其中包括ZIP、TAR、ISO、PNG等文件类型。您可以使用命令行终端简单快速地执行此任务。只需使用键盘。所以今天,我将向您展示如何在Linux中使用命令行下载文件。通常有两种已知的方法可以做到这一点,使用wget和curl工具。对于本文,我将使用Ubuntu20.04LTS来描述这个过程。但同样的命令也适用于其他Linux发行版,如Debian、Gentoo和CentOS。使用Curl下载文件Curl可用于通过各种协议传输数据。它支持许多使用Curl的协议,包括HTTP、HTTPS、FTP、TFTP、TELNET、SCP等等。您可以下载任何远程文件。它还支持暂停和恢复功能。首先,您需要安装curl。通过按Ctrl+Alt+T组合键安装curl以在Ubuntu终端中启动命令行应用程序。然后输入以下命令使用sudo安装curl。linuxmi@linuxmi:~/www.linuxmi.com$sudoaptinstallcurl出现提示时[sudo]linuxmipassword:请输入密码。安装完成后,输入以下命令下载文件。使用源文件名下载并保存文件要将文件保存在与原始源文件同名的远程服务器上,请使用-O(大写O)后跟curl,如下所示:$curl-O[URL]exceptInaddition对于-O,您还可以指定“--remote-name”,如下所示。两者的工作原理相同。下载并用不同的名称保存文件如果要下载并用与远程服务器上的文件不同的名称保存文件,请使用-o(小写o),如下所示。当远程URL在URL中不包含文件名时,这很有用,如下例所示。$curl–o[filename][URL][filename]是输出文件的新名称。curl--remote-namehttps://github.com/chrishunt/color-schemes/archive/master.zipcurl-olinuxmihttps://github.com/chrishunt/color-schemes/archive/master.zip下载多个文件下载对于多个文件,使用以下语法输入命令:$curl-O[URL1]-O[URL2]从FTP服务器下载文件要从FTP服务器下载文件,使用以下语法输入命令:$curl-Oftp://ftp.linuxmi.com/www.linuxmi.com.zip要从经过身份验证的FTP服务器下载文件,请使用以下语法:$curl-u[ftp_user]:[ftp_passwd]-O[ftp_URL]Pauseandresumedownloadat当一个文件正在下载时,你可以用Ctrl+C手动暂停它,或者有时因为某些原因它被中断并自动停止,你可以恢复它。导航到您之前下载文件的目录,然后使用以下语法输入命令:$curl–c[OPTIONS][URL]使用Wget下载文件使用wget,您可以从Web和FTP服务器下载文件和内容。wget是www和get的组合。它支持FTP、SFTP、HTTP和HTTPS等协议。它还支持递归下载功能。如果您想下载整个网站以供离线查看或生成静态网站的备份,此功能非常有用。此外,您还可以使用它从各种Web服务器检索内容和文件。通过按Ctrl+Alt+T组合键安装wget以在Ubuntu终端中启动命令行应用程序。然后输入以下命令使用sudo安装wget。linuxmi@linuxmi:~/www.linuxmi.com$sudoaptinstallwget当提示输入密码时,输入sudo密码。使用wget下载文件或网页要下载文件或网页,请打开终端并输入语法如下的命令:$wget[URL]要保存单个网页,请输入语法为$wget[URL的命令]如果要下载并保存一个与原始远程文件不同名称的文件,请使用-O(大写O),如下所示。这对您很有用,尤其是当您下载一个自动保存为名称“index.html”的网页时。要下载另一个名称的文件,请使用以下语法输入命令:$wget-O[文件名][URL]通过FTP下载文件要从FTP服务器下载文件,请使用以下语法输入命令:$wget[ftp_link]要从用户认证的FTP服务器下载文件,请使用以下语法:$wget-u[ftp_user]:[ftp_passwd]-O[ftp_URL]递归下载文件您可以使用递归下载功能下载所有文件指定目录下的内容,不管是网站还是FTP站点。要使用递归下载功能,请使用以下语法输入命令:$wget–r[URL]下载多个文件您可以使用wget下载多个文件。创建一个包含文件URL列表的文本文件,并使用具有以下语法的wget命令下载该列表。$wget–i[filename.txt]例如,我有一个名为“linuxmi.txt”的文本文件,其中包含两个要使用wget下载的URL列表。您可以在下图中看到我的文本文件内容。我将使用以下命令下载文本文件中包含的文件链接:$wget--ilinuxmi.txt使用包含url的文件作为下载列表您将看到它正在一个接一个地下载两个链接。暂停和恢复下载您可以按Ctrl+C暂停下载。要恢复暂停的下载,请转到先前下载文件的目录,并在wget后使用–c选项,如以下语法所示:$wget-cfilename.zip使用上述命令,您会注意到下载已恢复从它暂停的地方。总结在本文中,我们讨论了Linux下可用于下载文件的两种命令行方法的基本用法。需要注意的一件事是,如果您在下载文件时没有指定目录,则该文件将下载到您正在使用的当前目录中。