可以用来获取服务器上的所有文件吗?

时间:2010-10-07 13:11:29

标签: linux django gnu wget

可以用wget来获取服务器上的所有文件。如果这是我网站foo.com上使用Django框架的目录结构,请假设

如果这是目录结构

            /web/project1
            /web/project2
            /web/project3
            /web/project4
            /web/templates

不知道/project1,project2的目录名称。是否可以下载所有文件

3 个答案:

答案 0 :(得分:1)

您可以使用

wget -r -np http://www.foo.com/pool/main/z/

-r(递归获取文件/文件夹)

-np(递归检索时不要下降到父目录)

wget -nH --cut-dirs=2 -r -np http://www.foo.com/pool/main/z/

- cut-dirs(它使Wget不“看到”数字远程目录组件)

-nH(使用-r http://fly.srk.fer.hr/调用Wget将创建以fly.srk.fer.hr/开头的目录结构。此选项禁用此类行为。)

答案 1 :(得分:1)

首先,wget只能用于检索Web服务器提供的文件。在您发布的问题中,不清楚您是指实际文件还是网页。我会从你提出问题的方式猜测你的意图是下载服务器文件,而不是Django提供的网页。如果这是正确的,那么没有wget将无法工作。你需要使用像rsync或scp这样的东西。

如果你的意思是使用wget从Django中检索所有生成的页面,那么这只有在链接指向那些目录时才有效。因此,您需要一个包含以下代码的页面:

<ul>
<li><a href="/web/project1">Project1</a></li>
<li><a href="/web/project2">Project2</a></li>
<li><a href="/web/project3">Project3</a></li>
<li><a href="/web/project4">Project4</a></li>
<li><a href="/web/templates">Templates</a></li>
</ul>

wget不是通灵者;它只能拉入它所知道的页面。

答案 2 :(得分:0)

尝试递归检索 - -r选项。