当我尝试使用Nautilus将文件夹从webdav服务器复制到本地磁盘时,它会复制清单文件(带有目录列表等的xml)。使用尸体,我得到一个空文件。
我希望能够递归复制整个目录树。有人知道我该怎么做吗?
ps:我将Ubuntu 11.04与Nautilus 2.32.2.1和Cadaver 0.23.3结合使用
当我尝试使用Nautilus将文件夹从webdav服务器复制到本地磁盘时,它会复制清单文件(带有目录列表等的xml)。使用尸体,我得到一个空文件。
我希望能够递归复制整个目录树。有人知道我该怎么做吗?
ps:我将Ubuntu 11.04与Nautilus 2.32.2.1和Cadaver 0.23.3结合使用
Answers:
该答案总结了@Ocaso和@Rinzwind在评论中给出的建议。
我用这个:
wget -r -nH -np --cut-dirs=1 --no-check-certificate -U Mozilla --user={uname}
--password={pwd} https://my-host/my-webdav-dir/my-dir-in-webdav
并不完美(下载了很多'index.html?C = M; O = D'之类的东西),但其他方法还可以。
“ -r”通过以下链接递归下载。
“ -np”防止升至父目录(否则您将下载整个网站!)。
“ -nH”阻止创建名为“ my-host”的目录(我不想要)。
“ --cut-dirs = 1”阻止创建名为“ my-webdav-dir”的目录。
“ --no-check-certificate”是因为我在webdav服务器上使用了自签名证书(我也强制使用https)。
“ -U Mozilla”将http请求中的用户代理设置为“ Mozilla”-我的webdav服务器实际上不需要此代理,但无论如何我都包含了它。
This is the WebDAV interface. It can only be accessed by WebDAV clients such as the Nextcloud desktop sync client.
。知道为什么会这样吗?
实际上,使用Cadaver,您可以cd
进入要从中下载文件和目录的目录mget *
。
mget * .
在文件夹中或mget foldername
导致501 Not Implemented
。在box.com上真的对您有用吗?
您可以使用dav2fs挂载webdav服务器,然后可以像访问本地目录一样对其进行访问。
或者,您可以将其安装为路径,作为您自己的文件系统的一部分进行访问。
sudo mount -t davfs https://your.remote/path /your/local/mount/point
注意:/your/local/mount/point
必须是实际存在的目录,此目录才能起作用。
据我所知,您只需要运行以下命令即可使该命令起作用:(
sudo apt-get install davfs2
如果抱歉,需要更多配置,我很久以前就这样做了。)
(我将此添加为答案,因为我觉得利亚姆的答案提供的信息不足。)
sudo
下载文件听起来并不正确。