3

我正在使用 wget 从 FTP 服务器下载新文件。已下载的新文件需要由另一个脚本处理。

wget -N -r ftp://server/folder

所以我的问题是:如何获取已下载 wget 的所有文件的列表?

提前致谢!

4

1 回答 1

4

您可以使用 wget 的-o标志将标准输出通过管道传输到日志文件。日志文件将与终端的常规输出具有相同的格式,例如:

--2012-06-28 17:57:13--  http://cdn.sstatic.net/stackoverflow/img/sprites.png
Resolving cdn.sstatic.net (cdn.sstatic.net)... 67.201.31.70
Connecting to cdn.sstatic.net (cdn.sstatic.net)|67.201.31.70|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 16425 (16K) [image/png]
Saving to: `sprites.png'

0K .......... ......                                     100%  131K=0.1s

2012-06-28 17:57:13 (131 KB/s) - `sprites.png' saved [16425/16425]

如果您通过 egrep 管道传输此文件,egrep -e "--" logfile.txt您将仅获得指定下载了哪些文件的行以及时间戳。

--2012-06-28 17:57:13--  http://cdn.sstatic.net/stackoverflow/img/sprites.png

如果您愿意,您可以通过管道将其剪切egrep -e "--" logfile.txt|cut -d ' ' -f 4以仅获取下载的文件。

http://cdn.sstatic.net/stackoverflow/img/sprites.png

您也应该在此处添加错误检查,但这是基本大纲。

于 2012-06-28T15:02:22.610 回答