如果该目录具有索引。* file?
,如何以递归方式获取目录中的文件我需要将位于共享主机(无SSH)的不同网站上的多个目录复制到VPS上的新家。尝试将服务器发送到服务器。
wget -r -e robots=off --no-parent --user=myusername --password=mypass http://mywebsite.com/mydir/
这样可以很好地检索所有文件和子目录在" mydir"有一个交易杀手问题。如果任何目录有index.html,index.php等,它将不会下载该目录的内容。它只会下载index.html或者如果index.php下载它,将文件更改为index.html。
我尝试过-p -m --no-cookies --ftp标志等的许多不同组合,没有任何东西可以获得具有索引。*文件的目录。
我试图在没有在源服务器上创建tar并专门下载它的情况下使用它。
关于创建index.html文件的SO和其他网站上有大量文章,但如果存在索引文件,我找不到跳过目录的信息。如果副本没有创建index.html会很好,但现在我主要担心的是如果有索引。*文件则获取完整目录。
感谢您的帮助。
更新:@Reeno让我走上正轨。使用以下命令重新尝试使用新的FTP帐户,并且所有目录(包括索引。*文件)都可以立即成功下载。
wget -r --ftp-user=myftpname@mywebsite.com --ftp-password=mypass ftp://ftp.mywebsite.com/mydir/
答案 0 :(得分:0)
wget
永远不会通过http下载整个目录。你得到的是,有时网络服务器允许目录表示为其内容列表。实际格式是一个html页面,因此wget
然后递归地获取该页面中指向的链接。
如果你有ftp访问该网站,你可以使用ftp代替。与http不同,ftp是专为将文件从文件系统传输到另一个文件而设计的。大多数ftp客户端都可以检索整个目录(包括子目录)而无需选择每个文件。有很多选择,但只需将ftp://your.hostname.com放在文件管理器的位置栏中,通常会提示输入用户名和密码,您可以在大多数操作系统中拖放整个目录。