我正在使用wget从FTP服务器下载新文件。已下载的新文件需要由另一个脚本处理。
wget -N -r ftp://server/folder
所以我的问题是:如何获得已下载wget的所有文件的列表?
提前致谢!
答案 0 :(得分: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
你也应该在这里添加错误检查,但这是基本的概要。