【Windows】dir、whereコマンドで、フルパスや更新日時、ファイルサイズを取得する

この記事を読むのに必要な時間は約 6 分です。

 

ファイル一覧と、更新日時、ファイルサイズを取得したい。

最初に思いつくのがdirコマンドだと思います。

 

ですが、「/?」を付けてヘルプを見てもイマイチ分からないし使いづらいですよね。

もっと分かりやすくて使いやすいコマンドを今日知りました。

 

ファイル一覧と、更新日時、ファイルサイズ、簡単に出せたので記事に残しておきます。

スポンサーリンク

「dir」コマンドで、更新日時やファイルサイズなどを取得するには

 

やりたいことは、

  • フォルダ配下含め、ファイルの一覧を取得
  • ファイルはフルパス
  • ファイル毎のファイルサイズを表示
  • 更新日時も表示

 

というわけで、コマンドプロンプトからやっていきます。

 

コマンドプロンプトが表示されました。

 

これで、フォルダ内のファイルも込みで、タイムスタンプやファイルサイズが一応出ます。

 

ですが、次のような感じなのです。

フォルダが分かれていると、表示がフォルダ毎になってしまうんですよね。

 

フォルダ毎に分けずに全部フルパスで表示するオプションも確かあったはずですが、すぐに忘れてしまいます。

で使い方を確認しても、なかなか答えが分かりません。

 

そこで、もっと分かりやすいwhereコマンドを使うんです!

もっと簡単なコマンド、「where」

 

動作環境

Windows10、Windows8.1で確認済みです。

 

この記事では、自宅のWindows10でwhereコマンドを実行しながら書いています。

会社のPCが8.1なので、その場合もちゃんと動くのを確認しました。

コマンドの使い方

構文は次の通りです。

 

ディレクトリを指定せず「*」とか書いてしまうと、今いるフォルダではなくCドライブ直下などになってしまいます。

なので指定が必要です。

 

パターンは、「*.txt」とか、「*.*」など。

アスタリスク「*」がワイルドカードで、なんでも当てはまるという意味です。

whereコマンド使用例

では、ファイル一覧とフルパス、ファイルサイズとタイムスタンプを取得していきましょう。

 

「C:Work」のところは、適宜変更してください。

また、間にスペースが入るようなフォルダがある場合は、ダブルクォーテーション「””」で囲んでくださいね。

 

結果が見やすいように、テキストファイルに出力しました。

のように書けば、hogehoge.txtというテキストファイルに結果が出力されます。

 

テキストファイルに結果が出力されました。

左から、ファイルサイズ、タイムスタンプ、ファイルのフルパスです。

whereコマンドの注意点

コメントから、dropさんに注意点をご教示いただきました。

ファイルサイズが2GBを超える場合、実際の値とは違うものとなるそうです。

2GBを超えるサイズを参照するとマイナス値になります。

2GB = 2147483648 byte では -2147483648

2GB -1byte では 2147483647

2GB +1byte では -2147483647 となります。

なお、4GBの場合は+に転じ0byteとなり、4GBごとにこれを繰り返しますので、巨大なサイズファイルを扱う場合は正確な値を知ることは不可能となります。

動画ファイルなど、ファイルサイズが巨大なものが含まれそうな場合は、dirコマンドを検討したほうが良いでしょう。

スポンサーリンク

まとめ:もう次からwhereコマンドでいい

使い方を忘れたときは、「/?」を付ければ確認できます。

ですが、dirコマンドの場合、説明が不親切なのか答えになかなかたどり着けないんですよね。

 

whereコマンドなら使用例もいくつか載っていて、ワリと分かりやすいです。

 

ファイルサイズにもよりますが、ファイルの一覧を出したいとき、もうdir使わなくてもwhereコマンドでいいと思います。

ぜひ試してみてくださいね。

 

最後までお読みいただき、ありがとうございました。