乐闻世界logo
搜索文章和话题

如何使用wget镜像目录而不创建父目录?

2 个月前提问
2 个月前修改
浏览次数14

1个答案

1

当使用 wget 进行网站镜像时,默认情况下,wget 会在本地创建完整的目录结构来镜像远程服务器的目录结构。如果您不希望创建这些额外的父目录,可以使用 -nH(--no-host-directories)选项,这样 wget 就不会创建顶级主机目录。同时,如果您还想进一步避免创建任何目录,可以加上 --cut-dirs=X 选项,其中 X 是您希望跳过的目录层数。

例如,如果您要从 http://example.com/files/data/ 镜像 data 目录,而不创建任何父目录,可以这样使用命令:

bash
wget -r -nH --cut-dirs=2 --no-parent http://example.com/files/data/

这里的参数说明如下:

  • -r : 递归下载。
  • -nH : 不创建主机目录。
  • --cut-dirs=2 : 忽略 URL 中的前两级目录(filesdata 之前的目录)。
  • --no-parent : 防止 wget 回溯到父目录中去获取内容。

使用这种方式,您可以直接在当前目录下开始镜像 data 目录的内容,而不会创建任何其他父级或主机目录。这样做可以帮助保持本地目录的整洁,并且使得管理下载的文件更加方便。

2024年7月30日 00:23 回复

你的答案