是否可以对linux使用wget命令以获取网站目录树中的所有文件?
我可以递归地获取所有带镜像的网站,但我想将所有文件放在一个目录中。在我看来,它看起来像:
wget http://www.somesite.com/here/is/some/folders/*
这将在/ folders /目录中下载所有文件(不必递归查看子目录)。但是通配符似乎与wget无关,所以我正在寻找正确的方法。
答案 0 :(得分:4)
当然,有wget -r
,它将递归folders/
下的所有内容,只要有一个索引可以递归。
你能做的另一件事是,如果index.htm
目录中有folders
或其他任何内容,你可以通过将wget链接到wget来进行grep,sed和切割,如下所示:
wget -qO - http://foo/folder/index.htm | sed 's/href=/#/' | cut -d\# -f2 | \
while read url; do wget $url; done
这通常是我在需要刮擦时所做的事情,无论出于何种原因我都无法解决。
编辑:
可能想要添加--no-parent
并正确设置--domain
。 wget manpage实际上相当不错,涵盖了这些内容。