FTPサーバーから新しいファイルをダウンロードするためにwgetを使用しています。ダウンロードされた新しいファイルは、別のスクリプトで処理する必要があります。
wget -N -r ftp://server/folder
だから私の質問は:wgetがダウンロードされたすべてのファイルのリストを取得するにはどうすればよいですか?
前もって感謝します!
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
ここにもエラーチェックを追加する必要がありますが、これが基本的な概要です。