17

I am trying to download all of the files in a directory using:

wget -r -N --no-parent -nH -P /media/karunakar --ftp-user=jsjd --ftp-password='hdshd' ftp://ftp.xyz.com/Suppliers/my/ORD20130908

but wget is fetching files from the parent directory, even though I specified --no-parent. I only want the files in ORD20130908.

4

2 回答 2

29

您需要添加尾部斜杠以指示 URL 中的最后一项是目录而不是文件:

wget -r -N --no-parent -nH -P /media/karunakar --ftp-user=jsjd --ftp-password='hdshd' ftp://ftp.xyz.com/Suppliers/my/ORD20130908

↓</p>

wget -r -N --no-parent -nH -P /media/karunakar --ftp-user=jsjd --ftp-password='hdshd' ftp://ftp.xyz.com/Suppliers/my/ORD20130908/

文档中:

请注意,对于 HTTP(和 HTTPS),尾部斜杠对“--no-parent”非常重要。HTTP 没有“目录”的概念——Wget 依赖于您来指示什么是目录,什么不是。在 '<a href="http://foo/bar/" rel="noreferrer">http://foo/bar/' 中,Wget 会认为 'bar' 是一个目录,而在 '<a href= "http://foo/bar" rel="noreferrer">http://foo/bar' (没有尾部斜杠),'bar' 将被视为文件名(所以 '--no-parent' 将毫无意义,因为它的父级是'/')。

于 2014-12-13T02:39:20.390 回答
4
wget -r -N --no-parent -nH -P /media/karunakar --ftp-user=jsjd --ftp-password='hdshd'  -I/ORD20130908 ftp://ftp.xyz.com/Suppliers/my

-Iflag的使用见wget文档

于 2013-11-16T18:01:03.923 回答