我试图了解如何使用wget从一堆不同的ftp网站下载特定目录,以及来自美国政府的经济数据。
举一个简单的例子,我知道我可以使用以下命令下载整个目录:
wget --timestamping --recursive --no-parent ftp://ftp.bls.gov/pub/special.requests/cew/2013/county/
但是我设想运行更复杂的下载,我可能希望将下载限制在少数几个目录中。所以我一直在看--include选项。但是我不太了解它是如何工作的。具体来说,为什么这行不通:
wget --timestamping --recursive -I /pub/special.requests/cew/2013/county/ ftp://ftp.bls.gov/pub/special.requests/cew/
从文件下载的意义上讲,以下代码确实有效,但是下载的方式超出了我的需要(2013目录中的所有内容,而县目录中的所有内容):
wget --timestamping --recursive -I /pub/special.requests/cew/2013/ ftp://ftp.bls.gov/pub/special.requests/cew/
我无法判断我是否不了解wget,或者我的问题是关于ftp服务器结构的更基本的问题。
谢谢您的帮助!
根据此文档,似乎的过滤功能wget
非常有限。
当使用--recursive
选项,wget
将应用各种过滤器,如后下载所有链接的文档--no-parent
和-I
,-X
,-A
,-R
选项。
在您的示例中:
wget -r -I /pub/special.requests/cew/2013/county/ ftp://ftp.bls.gov/pub/special.requests/cew/
这不会下载任何内容,因为该-I
选项指定仅包含匹配的链接/pub/special.requests/cew/2013/county/
,但是在页面/pub/special.requests/cew/
上没有此类链接,因此下载在那里停止。这将起作用:
wget -r -I /pub/special.requests/cew/2013/county/ ftp://ftp.bls.gov/pub/special.requests/cew/2013/
...,因为在这种情况下,/pub/special.requests/cew/2013/
页面确实具有指向的链接county/
顺便说一句,您可以在此文档中找到比man
页面上更多的详细信息:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句