DOSでの再帰的なディレクトリリスト


201

DOSで再帰的なディレクトリリストを作成するにはどうすればよいですか?

DOSでコマンドまたはスクリプトを探していls -Rます。これにより、UNIXのコマンドと同様の再帰的なディレクトリリストを取得できます。

回答:


361

以下を使用できます。

dir /s

すべてのヘッダー/フッター情報のないリストが必要な場合は、これを試してください:

dir /s /b

(確かに、これはDOS 6以降で機能します。それ以前に機能していた可能性がありますが、思い出せません。)


7
+1はとても便利です。ディレクトリに多数のファイルが含まれている場合、このコマンドを使用すると、画面上でスクロールしてファイルを読むことができなくなります。このコマンドの出力を、自分の速度で読み取れるtxtファイルにパイプするのが最善だと思います。例(c:\ tempディレクトリが作成されていると想定):dir C:\ / s> C:\ temp \ CDirectoryListing.txt
Steven

あなたは真剣に素晴らしいです!それは魅力のように働きました!私は仕事で(Windowsマシンを使わざるを得ないところで)gVIMを使用しました!本当に、本当にいい!あなたは私に頭痛の時間を節約しました!
Walialu 2013年

/ Sと/ Bを使用すると、何らかの理由でC:\ folderを前に置いた完全な絶対パスが出力されますが、それは回避できますか?相対ファイル名だけが必要です。
lama12345 2014年

2
はい、検索/置換 "C:/ folder"で完全に機能し、 ""で置き換えます。
lama12345 14年

22
追加するだけ:tree /f目に心地よい表示を提供します:-)
arun

25

dir /s /b /a:d>output.txt それをテキストファイルに移植します


23

次のように入力して、必要なパラメータを取得できます。

dir /?

完全なリストについては、以下を試してください。

dir /s /b /a:d

3

FINDSTRでさまざまなオプションを使用して、次のように不要な行を削除できます。

DIR /S | FINDSTR "\-" | FINDSTR /VI DIR

通常の出力には、次のようなエントリが含まれます。

28-Aug-14  05:14 PM    <DIR>          .
28-Aug-14  05:14 PM    <DIR>          ..

FINDSTRが提供するさまざまなフィルタリングオプションを使用して、これらを削除できます。優れたunxutilsを使用することもできますが、デフォルトで出力がUNIXに変換されるため、CR + LFは取得されなくなります。FINDSTRは、最良のWindowsオプションを提供します。


いいね!私の追加要件は、すべての行を数えることですdir /s /b | find /v /c ""。これはで行われます。
domih 2017

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.