Windows10でお手軽にファイルリストを作成する方法
自分用メモです。
特定フォルダーにあるファイルのリストを作成したい、という事が往々にしてあります。
例えば仕事でファイル名と内容を説明する一覧表を作る時とか。地味に機会が多くあります。
これまではファイル名をいちいちコピペしたり、フリーソフトをダウンロードする等の手間が掛かっていました。
この方法を知ってからはリスト作りに手間が掛からなくなったのでまとめておきたいと思います。
dirコマンドを使います
ファイルリストを作るにはコマンドプロンプトで「dir」コマンドを使います。
情報をテキストファイルとして出したり、クリップボードにコピーしてエクセルに貼り付ける等の事が可能です。
「dir」コマンド自体はPowerShellでも使えるのですが、スイッチ(/bとか)が使えなかったり、クリップボード経由にすると日本語のファイル名が文字化けしたのでコマンドプロンプトの使用をオススメします。
ファイルリストの作成方法
コマンドプロンプトを起動後、ファイルリストを作成したいフォルダーまで移動してから以下のコマンドを入力してください。これでファイルリストの作成が完了します。
dir [*.出力したいファイル拡張子] /b > [保存したいファイルリストのフルパス]
「/b」は余計な情報を削除するスイッチです(後述の具体例で説明します)。
出力したいファイル拡張子は必要に応じて設定してください。全てのファイルを出したい場合は不要です。
例えばテキストファイルだけ出したい場合は「*.txt」、csvだけ出したい場合は「*.csv」と記述します。
保存したいファイルリストのフルパスはファイル名と拡張子まで必要です。
ちなみにC:\直下への保存は権限の関係でできませんので、どこかフォルダーを用意する必要があります。
例えばCSVだけのファイルリストをKドライブの「nazo」フォルダーに「list」という名前のテキストファイルで保存したい場合はこの様に記載します。
dir *.csv /b > k:\nazo\list.txt
クリップボードにコピーしたい場合
ちなみにファイルリストはクリップボードにコピーして使う事も可能です。
例えば資料作りの場合、コピーしてすぐエクセルに貼り付けられると便利です(というか便利でした)。その場合は以下の様に記述します。
dir [*.出力したいファイル拡張子] /b | clip
ファイルリスト作成時の「[保存したいファイルリストのフルパス]」を「| clip」に変えてやればコピーした事になり、任意の場所に貼り付けることができます。
「|(パイプ)」は日本語キーボードならSHIFTキーを押しながらBSの隣にある「\」キーを押せば入力できます。
具体例
それでは具体例です。
今回はCドライブにある「log」フォルダー内にある拡張子がlogファイルのリストを、Cドライブにある「list」フォルダーに「list.txt」というテキストファイルで作成したいと思います。
まずコマンドプロンプトを起動します。管理者権限はなしで大丈夫です。
ファイルリストを作成したいフォルダーに「cd」コマンドで移動します。入力方法は
cd [フォルダーへのパス]
です。ドライブを変えたい場合は
cd [ドライブレター]
になります。今回は「c:\log」になります。
logフォルダーに移動したのでとりあえず「dir」コマンドを入力してみます。
そのフォルダーに含まれるファイル情報が表示されるのですが、日付や赤枠で囲った様な不要な情報まで表示されました。それらの表示を消すのが「/b」スイッチになります。
今度は「dir /b」を入力してみた結果です。
同じフォルダーですがファイル名だけを表示する様になっているので内容が大幅に異なっています。今回はファイルリストを作りたいのでこれで十分な訳です。
他にも「/c」や「/w」などいくつかありますが、「dir /?」と入力すれば他のスイッチの種類や使い方を確認する事ができます。
今回は拡張子が「log」のファイルだけでリストを作りたいので以下の様に入力します。
dir *.log /b > c:\list\list.txt
実際に入力すると特にメッセージも出ないのですが、次の行が表示されれば該当フォルダーには指定されたファイル名だけのリストが作成されています。
もしテキストファイルの中身が空の場合、指定した条件では表示される物が無い状態なのでチェックが必要です。
またテキストファイルにせず、直接エクセルに貼り付けたりしたい場合は「| clip」と入力します。
こちらも特にメッセージが表示されませんが、リストが取得できているのでExcel等にそのままペーストする事ができます。
おわりに
方法としてはフリーソフトもアリですが、探す手間やセキュリティ的な諸々まで考えるとこの方法を使うのが一番いいと思います。
それに細かい条件付けたいなら全項目出力してエクセルに貼り付け、フィルタをかけて整形すれば事足りますし。
やっぱりエクセルは最高に便利ですね。
ディスカッション
コメント一覧
まだ、コメントがありません