📜  LinuxUnix 中的 wget 命令(1)

📅  最后修改于: 2023-12-03 15:02:44.951000             🧑  作者: Mango

Linux/Unix 中的 wget 命令

简介

wget 是 Linux/Unix 中一个常用的网络下载工具,它可以从网络上下载文件,支持 HTTP、HTTPS 和 FTP 等协议。wget 命令支持断点续传,在下载失败的情况下可以从中断处继续下载。wget 命令还支持下载整个网站,可以通过递归下载实现。

基本语法

wget 命令的基本语法为:

wget [选项] [URL]

其中选项包括:

  • -c:继续下载中断的文件;
  • -r:递归下载整个网站;
  • -np:不追溯到上级目录;
  • -nd:不创建目录结构;
  • -o:将日志记录到指定文件;
  • -O:将下载内容写入指定文件。
常见用法
下载文件

使用 wget 命令下载文件很简单,只需要指定文件的 URL 即可:

$ wget https://example.com/file.txt

如果下载过程中出现网络中断等问题,重新执行 wget 命令即可继续下载,wget 命令会自动检测已下载的部分并从未下载的部分继续下载。

断点续传

如果需要进行断点续传,只需要添加 -c 选项即可:

$ wget -c https://example.com/file.txt
递归下载整个网站

如果需要下载整个网站,可以使用 -r 选项:

$ wget -r https://example.com/

递归下载时 wget 命令会自动下载每个页面上引用的链接,这会很快导致下载的内容非常庞大,因此一定要谨慎使用。

下载整个网站中的某个文件夹

如果只需要下载网站中的某个文件夹,可以使用如下命令:

$ wget -r -np -nH --cut-dirs=1 -R index.html https://example.com/folder/
  • -np 参数表示不追溯到上级目录;
  • -nH 参数表示不创建目录结构;
  • --cut-dirs=1 参数表示去除网址层级目录中的 1 层,这样文件夹就会直接下载到当前目录;
  • -R index.html 参数表示排除下载 index.html 文件。
将日志记录到指定文件

使用 -o 参数可以将 wget 命令的日志记录到指定文件,例如:

$ wget -o log.txt https://example.com/file.txt
将下载内容写入指定文件

如果需要将下载的内容写入指定文件,可以使用 -O 参数:

$ wget -O content.txt https://example.com/file.txt
总结

wget 命令是 Linux/Unix 中一个非常实用的网络下载工具,它支持多种协议,可以进行断点续传和递归下载整个网站等功能。当需要下载大量文件时,wget 命令可以大大节省时间和精力。