コマンドプロンプトでサブフォルダを含むファイル一覧を取得する方法【dir /s】
フォルダ内にあるファイルの一覧は、エクスプローラーから確認できます。
しかし、サブフォルダを含めて数千~数万件のファイルを一覧にしたい場合は、コマンドプロンプトを使うと効率的です。
Windowsの dir コマンドに /s オプションを指定すると、サブフォルダ内のファイルも含めて一覧を取得できます。
さらに、取得した結果をクリップボードにコピーして、Excelやテキストエディタに貼り付けることも可能です。
この記事では、コマンドプロンプトを使ってサブフォルダを含むファイル一覧を取得する方法を紹介します。
コマンドプロンプトでサブフォルダを含むファイル一覧を取得する方法
1. 対象フォルダでコマンドプロンプトを開く
まず、ファイル一覧を取得したいフォルダをエクスプローラーで開きます。
アドレスバーをクリックし、「cmd」と入力して「Enter」キーを押します。

コマンドプロンプトが開き、対象フォルダをカレントディレクトリとして操作できる状態になります。
2. dirコマンドを実行する
次のコマンドを入力して「Enter」キーを押します。
dir /b /s /a-d | clip

コマンドを実行すると、対象フォルダ以下にあるファイルの一覧が取得され、結果がクリップボードにコピーされます。
そのため、実行後にExcelやテキストエディタなどを開き、「Ctrl」+「V」でファイル一覧を貼り付けることができます。
なお、縦棒「|」は、キーボードの「Shift」キーを押しながら「\」キーを押すことで入力できます。
3. 取得したファイル一覧をテキストエディタなどに貼り付ける
テキストエディタやExcelなどを開き、「Ctrl」+「V」で貼り付けます。

ファイル数が多い場合でも、エクスプローラーで一つずつ確認する必要がないため、ファイル構成の確認や調査に便利です。
dirコマンドのオプションについて
今回使用したコマンドは、dirコマンドに複数のオプションを指定しています。
dir /b /s /a-d | clip
/b:ファイルのパスを簡潔に表示する
/b は「Bare format」で表示するためのオプションです。
ファイルサイズや更新日時などの情報を省略し、ファイルのパスをシンプルに表示します。
/s:サブフォルダも含める
/s を指定すると、指定したフォルダだけでなく、サブフォルダ内のファイルも含めて検索します。
フォルダの階層が深い場合でも、下層にあるファイルまでまとめて取得できます。
/a-d:フォルダを除外する
/a-d を指定すると、ディレクトリ(フォルダ)を除外し、ファイルだけを一覧にできます。
今回のように、ファイル一覧だけを取得したい場合に使用します。
| clip:結果をクリップボードにコピーする
|(パイプ)を使って clip コマンドにつなげると、dir コマンドの実行結果をクリップボードにコピーできます。
そのため、コマンドプロンプトに表示された結果を選択してコピーする必要がありません。
ファイル一覧をテキストファイルに保存する方法
ファイル一覧をクリップボードにコピーするのではなく、テキストファイルとして保存したい場合は、次のコマンドを使用します。
dir /b /s /a-d > filelist.txt
> を使うと、コマンドの実行結果を filelist.txt というファイルに書き出せます。
大量のファイル一覧を保存しておきたい場合や、後から確認したい場合に便利です。
まとめ
コマンドプロンプトの dirコマンドに /s を指定すると、サブフォルダを含む大量のファイル一覧を一括で取得できます。
/b や /a-d を組み合わせれば、ファイルのパスだけを一覧にすることも可能です。また、| clip を使えば結果をクリップボードにコピーでき、テキストエディタやExcelにそのまま貼り付けられます。
ファイル数が多いフォルダの調査や、Webサイト・サーバーのファイル構成を確認するときなどに活用できます。