Win: サブディレクトリも含めて、ファイル一覧をフルパスで取得する方法

UNIX なら find コマンドで取れるが、Windowsコマンドプロンプトでやるにはどうするのか。
正解はこれ。

dir /b /s

/b はファイル名のみ出力するオプション。/s は再帰。両者を組み合わせると、なぜかフルパスで出力される。

D:\sardine\temp>dir /b /s
D:\sardine\temp\buildtest
D:\sardine\temp\enumservices.cs
D:\sardine\temp\enumservices.exe
D:\sardine\temp\fuga
D:\sardine\temp\buildtest\bavo.exe
D:\sardine\temp\buildtest\moga.exe
D:\sardine\temp\test\are.txt
D:\sardine\temp\test\kore.txt

[2005-04-20 追記] 隣の席の N さんが、もっと融通の利くやつを教えてくれた。

for /R  %%A in (*) do echo %%A

echo の中身をいじれば、出力されるリスト全体に対してファイル更新日付でソートするとかできる。ただしバッチファイルに書く必要がある。

[2006-03-03 追記] ファイルのフルパスと更新日付を出力する例。くどいけどバッチに書きましょう。

for /R  %%A in (*) do @echo %%A %%~tA