使用WGET从网站/目录下载所有.tar.gz文件

sMy*_*les 5 linux bash wget download

所以我试图创建一个别名/脚本,使用wget从网站/目录下载所有特定扩展,但我觉得必须有一个比我想象的更简单的方法.

现在我搜索谷歌和手册页的代码是:

wget -r -l1 -nH --cut-dirs=2 --no-parent -A.tar.gz --no-directories http://download.openvz.org/template/precreated/
Run Code Online (Sandbox Code Playgroud)

所以在上面的例子中,我试图从OpenVZ precreated templates目录下载所有.tar.gz文件.

上面的代码工作正常,但我必须手动指定--cut-dirs = 2,它会删除通常会创建的/ template/precreated /目录结构,并且还会下载robots.txt文件.

现在这不一定是一个问题,只是删除robots.txt文件很容易,但我希望我只是错过了手册页中的一些内容,这些内容可以让我做同样的事情,而无需指定要剪切的目录结构. .

感谢您提前提供任何帮助,非常感谢!

Ane*_*new 7

使用该-R选项

-R robots.txt,unwanted-file.txt
Run Code Online (Sandbox Code Playgroud)

作为您不想要的文件的拒绝列表(以逗号分隔).

至于编写脚本:

URL=http://download.openvz.org/template/precreated/
CUTS=`echo ${URL#http://} | awk -F '/' '{print NF -2}'`
wget -r -l1 -nH --cut-dirs=${CUTS} --no-parent -A.tar.gz --no-directories -R robots.txt ${URL}
Run Code Online (Sandbox Code Playgroud)

这应该基于您的URL中的子目录.