bat/cmd

forfiles コマンド ファイルサイズ 確認方法

こんばんは!先日、「共有フォルダが一杯になってしまった。共有フォルダ内の大きいファイルから検索して削除したいのですが方法などありますか?」という問い合わせを受けましたのでコマンドプロンプトでファイルを抽出する方法を備忘録にしました。

確かに、システム管理者側から見ると共有フォルダなどはファイルサーバーマネージャーでクウォータ(容量制限)をしているので使用率などは解ります。しかしどれが大きいファイルなのか探す場合は、どのような方法で検索した方が良いんだろう!?と私も思ってしまったので調べました。

共有フォルダのファイルサイズを確認する方法

共有フォルダ等をエクスプローラーで確認するとファイルのサイズは解りますが、フォルダサイズは表示されません。本当はフォルダサイズまで表示されると便利なのですがWindows標準の機能では表示はされません。これだと使用するユーザーからだと、どのファイルが大きくて容量を圧迫しているのか解りません!

共有フォルダ ファイルのサイズ確認方法

もし1つのフォルダのサイズを確認したい場合は、対象フォルダを選択 > 右クリック > プロパティ をクリックすることでフォルダ容量が表示されます。

しかし、組織の共有フォルダは大量のファイルやフォルダが散りばめられているため1つ確認する暇がないのが現状だと思います。

共有フォルダ ファイルサイズを確認するコマンド forfiles

共有フォルダから2MB以上のファイルを確認する方法をコマンドプロンプトで紹介します。下記の構文になります。

■2MB以上のファイルを検索する
forfiles /s /p “対象パス” /c “cmd /c if @fsize gtr 2097152 echo @fdate @fsize @path”

上記の”対象パス”部分に共有フォルダのパスを入力すればOKです。gtrでファイルサイズをバイト単位で指定します。

ファイルのサイズ MB(メガ)変換
  • 1MB(メガ) = 1024KB(キロ) = 1048576B(バイト)
  • 2MB(メガ) = 2048KB(キロ) = 2097152B(バイト)
  • 3MB(メガ) = 3072KB(キロ) = 3145728B(バイト)

共有フォルダのクウォータ(容量制限)が大きければ大きいほど検索に時間がかかるため表示結果が遅くなります。

共有フォルダ ファイルサイズを抽出するコマンド forfiles

共有フォルダから2MB以上のファイルを確認しcsvファイルに抽出する方法になります。下記の構文になります。

■2MB以上のファイルを検索しファイルを出力する
forfiles /s /p “対象パス” /c “cmd /c if @fsize gtr 2097152 echo @fdate @fsize @path” > test.csv

使い方は先ほど紹介したコマンドと同じですが、末尾に >(リダイレクト) を付けることでCSVファイルとして出力しています。

forfiles コマンド ファイルサイズ 確認方法 まとめ

forfilesコマンドのまとめ
  • forfilesコマンドのファイルサイズ指定はバイト単位になる
  • KBやMBのファイルを検索するときはバイト単位に変換すること
  • 共有フォルダの容量が大きいほど時間がかかる
  • CSVで出力しておけば後で確認ができる

バッチファイルにしておけばいつでもクリックするだけで確認が出来ますので作成しておくと便利になります。

それではー!

ABOUT ME
なお
フルスタックエンジニアを目指すサラリーマン。インフラ、WEBを中心に色んなIT関連情報に手を出したいと思います。
ブログランキング

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA