我正在尝试使用以下命令下载目录中的所有文件:
wget -r -N --no-parent -nH -P /media/karunakar --ftp-user=jsjd --ftp-password='hdshd' ftp://ftp.xyz.com/Suppliers/my/ORD20130908
但是wget
正在从父目录提取文件,尽管我指定了--no-parent
。我只想要ORD20130908
目录中的文件。
您需要在URL中添加一个斜杠,以表示最后一项是目录而不是文件:
wget -r -N --no-parent -nH -P /media/karunakar --ftp-user=jsjd --ftp-password='hdshd' ftp://ftp.xyz.com/Suppliers/my/ORD20130908
↓
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依赖于您指示什么是目录,什么不是目录。在“http://foo/bar/”中,Wget将认为“bar”是一个目录,而在“http://foo/bar”中(没有斜杠),“bar”将被视为文件名(因此,“--no-parent”是无意义的,因为其父级是“/”)。
wget -r -N --no-parent -nH -P /media/karunakar --ftp-user=jsjd --ftp-password='hdshd' -I/ORD20130908 ftp://ftp.xyz.com/Suppliers/my
-I
真的很有用! - joelostblom
/
的效果,因此我可以自由地相应地编辑答案。 - nhahtdh