Windowsでファイルとフォルダのリストを出力するバッチファイル

先日、Windowsで大量のフォルダを一括で作成するバッチファイルについて投稿しましたが、このバッチとも相性が良いファイルやフォルダのリストを出力するバッチを作成しました。

バッチの中で使用しているコマンドは現在対応中の案件で愛用しているのですが、いずれ使わなくなったら忘れてしまいそうなので備忘録として残しておこうかと思った次第です。

フォルダのリストを出力するバッチ

@echo off
pushd %~dp0
dir %1 /b /ad /s > list.txt
exit

ファイルのリストを出力するバッチ

@echo off
pushd %~dp0
dir %1 /b /a-d /s > list.txt
exit

※実はフォルダとファイルで内容が1文字違うだけだったり。

使い方

  • 上記のバッチを作成し、任意の場所に配置します。
  • リスト化したいフォルダやファイルをバッチにドラッグ&ドロップします。
  • バッチと同じフォルダ配下に「list.txt」とリストファイルが出力されます。

実例

サンプル用にCドライブ直下に下記のようにフォルダ・ファイルが配置された「sample」フォルダを用意しました。
C:\sample\dir1\file1.txt
C:\sample\dir2\dir3\
C:\sample\dir2\dir4\dir5\file2.txt
C:\sample\dir2\dir4\dir5\file3.txt

「sample」フォルダを「dirlist.bat」にドラッグ&ドロップした結果

C:\sample\dir1
C:\sample\dir2
C:\sample\dir2\dir3
C:\sample\dir2\dir4
C:\sample\dir2\dir4\dir5

⇒フォルダのみのリストが出力されます。

「sample」フォルダを「filelist.bat」にドラッグ&ドロップした結果

C:\sample\dir1\file1.txt
C:\sample\dir2\dir4\dir5\file2.txt
C:\sample\dir2\dir4\dir5\file3.txt

⇒ファイルのみのリストが出力されます。

上記をコマンドプロンプト上で実行した場合のイメージ

dir

最後に

現在、愛用しているコマンドをバッチ化して、更に少し引数を追加することでドラッグ&ドロップに対応したらより便利になりました。良かったらご参考まで。

サブコンテンツ

このページの先頭へ