この記事の概要
・任意のディレクトリからファイルの一覧を取得する方法を記載
非効率な方法
エクスプローラで該当ディレクトリをオープンし、ファイル名にフォーカスを入れて、手動でコピーし一覧を作成する。
20ファイルくらいならOKですが、100ファイル、5000ファイルになると絶望的です。
システム開発、保守、運用をしていると、1万を超えてくるケースもあります。よって効率的な方法が必要になります。
効率的な方法
1.Windowsのコマンドプロンプトの起動
・cmdでコマンドプロンプトを起動
2.Windowsのコマンドプロンプトで情報を取得
・「cd C:\Windows\System32」のコマンドでディレクトリ移動
・「dir 」のコマンドで対象ファイルの一覧を取得
[蛇足]
その後、これらの情報を加工するなら、以下のようなイメージになるとか思います。
■サクラエディタで成形
・「矩形選択」でファイル名
・「置換」処理とかでファイル名のみに成形
■エクセル
・サクラエディタで成形したデータをエクセルに貼り付け完成
1.Windowsのコマンドプロンプトの起動
・検索ボックスに「cmd」を入力してコマンドプロンプト検索し、
コマンドプロンプトのアイコンをダブルクリックし起動
2.Windowsのコマンドプロンプトで情報を取得
・「cd C:\Windows\System32」のコマンドでディレクトリ移動
・「dir | find “dll”」のコマンドで対象ファイルの一覧を取得
【コマンド1】
cd C:\Windows\System32
【コマンド2】
dir
■コマンド1の説明
ファイルが格納されているディレクトリ(C:\Windows\System32)に移動しています。
■コマンド2の説明
ファイルが格納されているディレクトリに移動したので、ここでdirコマンドで
移動したディレクトリ配下のファイル、ディレクトリの一覧を表示しています。
ここで出力される内容は、「非効率な方法」の絵と同じ内容が出力されます。
【コマンド実行後の結果について】
dirコマンド実行後に、「C:\Windows\System32」以下のディレクトリ、ファイルの一覧が表示されています。
<DIR> ..
<DIR> 0409
上記の部分がディレクトリの部分になります。
[蛇足]
0409はディレクトリですが、後はcdで相対パスを指定する時のものです。
. はカレントディレクトリ
.. は一つ上の階層
2019/12/07 18:09 327,680 DaOtpCredentialProvider.dll
2021/05/03 03:59 489,472 das.dll
2019/12/07 18:08 98,816 dasHost.exe
2019/12/07 18:09 47,616 dataclen.dll
2021/05/03 03:59 237,056 DataExchange.dll
2021/05/03 04:00 259,408 DataExchangeHost.exe
上記の部分がファイルの情報の部分になります。
左から、
・ファイルのタイムスタンプ(年月日)
・ファイルのタイムスタンプ(時分)
・ファイルのサイズ
・ファイル名
128 個のディレクトリ 16,083,148,800 バイトの空き領域
上記の部分が検索結果のサマリ情報です。
4240 個のファイルと128個のディレクトリが存在したことになります。
やはり、手動で作業するには、きびしい数だったと思います。
[蛇足]
【コマンド3】
dir | find “.dll”
dirコマンドの結果をパイプでつないで、findコマンドに流しています。
findコマンドで.dllを指定しているので、先ほどの出力結果で拡張子がdllとなるファイルのみ
を抽出できます。