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