Windowsコマンドプロンプトでフォルダやファイルのサイズを確認する方法

1つのファイルのサイズは、コマンドプロンプトで dir /-c "ファイルの完全パス" と入力するとバイト単位で確認できます。フォルダー内を一覧にする場合と、下位フォルダーを含めて合計する場合はオプションが違います。出力の空き容量を、指定フォルダーのサイズと取り違えないことも大切です。

目次

ファイルサイズを確認する最短のコマンド

dir /-c "C:\Documents\Project.docx"

これはcmd.exe(コマンドプロンプト)で実行する例です。Windows TerminalがPowerShellで開いている場合は、先にcmdと入力してコマンドプロンプトへ切り替えます。PowerShellのdirは別のコマンドの別名であり、cmdの/sなどをそのまま使う説明とは区別してください。

表示意味
ファイル名の前の数字そのファイルのサイズ(バイト)
<DIR>フォルダーである表示。配下の合計サイズではない
ファイル数とバイト数の集計行今回の条件で列挙されたファイルの合計
空き領域/空きバイト数ドライブ側の空き容量。指定フォルダーのサイズではない

仕様とオプションはMicrosoftのdir公式資料にあります。/-cは桁区切りを消す設定で、サイズ自体を変えるものではありません。

表示範囲の選び方

dir /a:-d /-c "C:\Documents"
dir /a /s /-c "C:\Documents"

1行目は指定フォルダー直下のファイル、2行目は下位フォルダーを含む一覧です。/aを指定しない場合は隠し・システム属性の項目が通常の一覧から除かれます。アクセス拒否が出た部分は取得できていないため、合計を完全な値と決めず、そのエラーも確認します。

コマンドプロンプトとは

コマンドプロンプトは、Windowsオペレーティングシステムにおけるテキストベースのインターフェースです。ユーザーはコマンドプロンプトを通じて、ファイルの操作、システムの設定変更、トラブルシューティングなど、さまざまなタスクをコマンド(命令)を入力することで実行できます。コマンドプロンプトは、cmd.exe プログラムを通じてアクセスされ、主にシステム管理者や上級ユーザーによって使用されますが、基本的なコマンドを覚えるだけでも日常のコンピュータ作業を効率化できます。

コマンドプロンプトを開くには、スタートメニューの検索バーに「cmd」と入力し、表示される「Command Prompt」をクリックします。または、Win + R キーを押して「実行」ウィンドウを開き、「cmd」と入力してEnterキーを押すと、コマンドプロンプトが開きます。

基本的なコマンドの例としては以下のようなものがあります。

  • dir:ディレクトリ内のファイルとサブディレクトリのリストを表示します。
  • cd:現在のディレクトリを変更します。
  • mkdir:新しいディレクトリを作成します。
  • del:ファイルを削除します。

これらのコマンドは、コマンドプロンプトの基本的な操作を理解するための出発点となります。次のセクションでは、これらの基本コマンドを活用して、フォルダやファイルのサイズを確認する方法について具体的に見ていきましょう。

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

Windowsコマンドプロンプトを使用してフォルダやファイルのサイズを確認する方法は主に2つあります。1つ目はdirコマンドを使用する方法、2つ目はpowershellコマンドを利用する方法です。それぞれの方法について、サンプルコードと共に詳しく説明します。

方法1: dir コマンドを使用する

dir コマンドは、指定したディレクトリ内のファイルとサブディレクトリのリストを表示します。このコマンドはファイルのサイズも表示するため、特定のファイルのサイズを確認するのに便利です。

サンプルコード:
dir /a /s /-c "C:\対象のフォルダパス"

このコマンドは、C:\対象のフォルダパスにある全てのファイルとサブディレクトリのリストを表示し、各ファイルのサイズとともに総サイズを計算します。

方法2: powershell コマンドを使用する

powershell コマンドを使用すると、特定のフォルダやファイルのサイズをより詳細に確認することができます。特に、フォルダ全体のサイズを確認したい場合に有効です。

サンプルコード:
powershell -command "Get-ChildItem -LiteralPath 'C:\対象のフォルダパス' -File -Force -Recurse | Measure-Object -Property Length -Sum"

このコマンドは、C:\対象のフォルダパスにある全てのファイルのサイズを再帰的に計算し、合計サイズを表示します。Get-ChildItemは指定したパス内のアイテムを取得し、Measure-Objectはそのアイテムのプロパティの合計や平均などを計算します。

これらの方法を使えば、Windowsコマンドプロンプトを使用して、簡単にフォルダやファイルのサイズを確認することができます。特定のニーズに応じて、これらのコマンドを組み合わせて使用することで、より効率的なファイル管理を行うことが可能です。次のセクションでは、これらのコマンドを実際のシナリオに適用する方法を、具体的なケーススタディを通じて紹介します。

実践: コマンドを使ってフォルダやファイルのサイズを確認する

コマンドプロンプトを使ってフォルダやファイルのサイズを確認する方法を理解したところで、いくつかの実践的なケーススタディを見てみましょう。これらのケーススタディでは、具体的なシナリオに基づいたサンプルコードを多用して、実際にどのようにコマンドを使うかを示します。

ケーススタディ1: 特定のフォルダのサイズを確認する

シナリオ:

あなたは、C:\Documents にあるフォルダのサイズを確認したいと考えています。このフォルダには、さまざまな文書ファイルやサブディレクトリが含まれており、全体のサイズを知りたいのです。

サンプルコード:
powershell -command "Get-ChildItem -LiteralPath 'C:\Documents' -File -Force -Recurse | Measure-Object -Property Length -Sum"

このコマンドは、C:\Documents ディレクトリおよびそのサブディレクトリ内の全ファイルのサイズを合計し、その結果を表示します。

ケーススタディ2: 特定のファイルのサイズを確認する

シナリオ:

あなたは、C:\Documents\Project.docx というファイルの正確なサイズを知りたいと考えています。このファイルは重要なプロジェクト文書で、そのサイズを確認する必要があります。

サンプルコード:
dir "C:\Documents\Project.docx"

このコマンドは、指定した Project.docx ファイルのサイズを含む詳細情報を表示します。

また、特定のファイルやフォルダのサイズを定期的にチェックしたい場合は、これらのコマンドをスクリプトにまとめてスケジュールされたタスクとして実行することもできます。これにより、ファイルサイズの変更を監視し、必要に応じて対応を取ることができます。

コマンドプロンプトの使用は、このように多岐にわたります。簡単なコマンドから始めて、徐々に複雑なスクリプトを組み合わせることで、日々の作業を効率化し、生産性を高めることが可能です。

フォルダーごとの容量内訳を知りたい場合

dir /sの途中に出るフォルダーごとの集計と、全体の集計を重ねて合算しないでください。各下位フォルダーを再帰的に集計して大きい順に並べる方法は、コマンドでフォルダー全体・各下位フォルダーの容量を調べる手順を参照してください。

ケーススタディ4: フォルダ内の特定のファイルタイプの総サイズを計算する

シナリオ:

C:\Documents フォルダには多数のファイルが含まれており、その中で .pdf ファイルの総サイズを知りたいと考えています。これにより、PDFファイルがストレージ容量にどれだけ影響しているかを把握したいです。

サンプルコード:
powershell -command "Get-ChildItem -LiteralPath 'C:\Documents' -File -Force -Filter *.pdf -Recurse | Measure-Object -Property Length -Sum"

このコマンドは、C:\Documents ディレクトリおよびそのサブディレクトリ内の全ての .pdf ファイルのサイズを合計し、その結果を表示します。

これらのケーススタディは、コマンドプロンプトを使ってフォルダやファイルのサイズを確認するための基本的な方法から少し複雑なスクリプトまで、さまざまなシナリオに対応する方法を示しています。これらのサンプルコードを参考に、自分のニーズに合わせてコマンドをカスタマイズし、効率的なファイル管理を実現しましょう。次のセクションでは、これらの作業をさらに自動化するためのバッチファイルの作成方法について詳しく解説します。

コマンドプロンプトの応用: ファイルやフォルダのサイズ確認を自動化する

コマンドプロンプトは非常に強力で、その機能をスクリプトにまとめることで、日常の作業を自動化することが可能です。このセクションでは、特定のフォルダやファイルのサイズを定期的に確認するバッチファイルの作成方法について解説します。これにより、手動でコマンドを実行する手間を省き、作業の効率化を図ることができます。

バッチファイルとは

バッチファイル(.batファイル)は、一連のコマンドプロンプトコマンドをテキストファイルに記述し、一括で実行できるようにしたものです。バッチファイルは、ファイルをダブルクリックするだけでコマンドを実行できるため、複雑なコマンドを簡単に実行できます。

バッチファイルの作成手順

STEP
テキストエディタを開く

Notepadや他のテキストエディタを使用します。

STEP
コマンドを記述する

コマンドプロンプトで実行したいコマンドをテキストファイルに記述します。

STEP
ファイルを保存する

ファイルを .bat 拡張子で保存します。

サンプルコード: 特定のタスクを自動化するバッチファイル

シナリオ:

毎日特定の時間に C:\Documents フォルダのサイズを確認し、そのサイズをログファイルに記録する。

バッチファイルの内容:
@echo off
set "folderpath=C:\Documents"
set "logpath=C:\Logs\folder-size-log.txt"

echo Checking size of %folderpath% at %TIME% on %DATE% >> "%logpath%"
powershell -NoProfile -Command "Get-ChildItem -LiteralPath '%folderpath%' -File -Force -Recurse | Measure-Object -Property Length -Sum" >> "%logpath%" 2>&1
echo Done.

この例は、対象フォルダーとログの親フォルダーが既に存在する前提です。ログは集計対象の外へ置き、実行ユーザーに読み取りとログ書き込みの権限があるか確認します。エラーもログへ残すため、Sumだけでなくアクセス拒否などの出力も確認してください。

このバッチファイルは、以下のステップを実行します:

  1. C:\Documents フォルダのサイズを確認します。
  2. 現在の時間と日付と共に、そのサイズを C:\Logs\folder-size-log.txt ファイルに記録します。

バッチファイルのスケジューリング

作成したバッチファイルを自動的に定期実行するためには、Windowsのタスクスケジューラを使用します。タスクスケジューラを使えば、特定の時間やイベントに基づいてバッチファイルを自動的に実行することができます。

STEP
タスクスケジューラを開く
  1. キーボードの[Windows key+ R key]を押して、[Run]ウィンドウを開きます。
  2. [taskschd.msc]と入力して[OK]をクリックします。
STEP
基本タスクを作成する

[Create Task]をクリックします。

STEP
タスクの名前入力

タスクの名前と説明を入力します。

STEP
トリガーを設定する

[Triggers]タブを選択して[New]をクリックします。

STEP
タスク実行頻度を設定

タスクを実行する頻度(例:毎日、毎週など)を設定します。

STEP
アクションを設定する

[Actions]タブを選択して[New]をクリックします。

STEP
バッチのパス指定

「プログラムの開始」を選び、バッチファイルのパスを指定します。

これで、指定した時間にバッチファイルが自動で実行され、フォルダのサイズがログファイルに記録されるようになります。このようにして、コマンドプロンプトとバッチファイルを活用することで、日常的な作業を効率化し、より生産的なワークフローを構築することができます。次のセクションでは、このプロセスに関するよくある質問とその回答を提供します。

よくある質問(FAQ)

Windowsコマンドプロンプトを使用してフォルダやファイルのサイズを確認するプロセスに関して、ユーザーからよく寄せられる質問とその回答をまとめました。これらのFAQは、プロセスの理解を深め、一般的な問題の解決に役立つことを目的としています。

Q1: コマンドプロンプトでフォルダのサイズを表示する際に、単位をMBやGBに変更することはできますか?

A1: 標準のdirコマンドでは単位の変更は直接行えませんが、powershellコマンドを使用すれば、結果をMBやGBなどの単位で表示することができます。以下は、フォルダのサイズをGB単位で表示するサンプルコマンドです。

powershell -command "(Get-ChildItem -LiteralPath 'C:\対象のフォルダパス' -File -Force -Recurse | Measure-Object -Property Length -Sum).Sum / 1GB"

Q2: 特定のファイルタイプのみのサイズを確認するにはどうすればいいですか?

A2: Get-ChildItem コマンドに -Filter パラメータを使用して、特定のファイルタイプに絞り込むことができます。以下の例では、.txt ファイルのみのサイズを計算します。

powershell -command "Get-ChildItem -LiteralPath 'C:\対象のフォルダパス' -File -Force -Filter *.txt -Recurse | Measure-Object -Property Length -Sum"

Q3: コマンドプロンプトからフォルダのサイズを確認する際に、システムファイルや隠しファイルも含まれますか?

A3: -Recurseは下位フォルダーの探索です。隠し・システム属性のファイルも対象へ含めるには-Forceを使います。ただしアクセス権を迂回するものではなく、読めない項目は結果に含まれません。MicrosoftのGet-ChildItem説明で各オプションを確認してください。

Q4: 複数のフォルダやファイルのサイズを一度に確認することは可能ですか?

A4: 可能です。ファイル単位はdirの一覧、フォルダーごとの再帰合計と比較は容量内訳を一覧表示する手順を使います。合計する範囲を決めてから比較してください。

Q5: コマンドプロンプトでファイルやフォルダのサイズを確認する方法は正確ですか?

A5: ここで取得するのは列挙できたファイルの長さの合計です。アクセス拒否、探索条件、リンク、圧縮やスパースファイルなどにより、エクスプローラーの「ディスク上のサイズ」やドライブ全体の使用量とは同じにならない場合があります。集計中にファイルが変化する場合もあるため、目的に合う範囲と時点で比較します。

これらのFAQは、コマンドプロンプトを使用してファイルやフォルダのサイズを確認する際によく遭遇する疑問や問題に対する解決策を提供することを目的としています。何か他にご質問がある場合は、遠慮なく尋ねてください。次のセクションでは、この記事で紹介した内容の要点をまとめ、コマンドプロンプトを使うメリットと効率的な使い方について結論を述べます。

まとめ

本記事では、Windowsコマンドプロンプトを使用してフォルダやファイルのサイズを確認する方法を詳細に解説しました。コマンドプロンプトは、直感的ではないかもしれませんが、慣れれば非常に強力なツールです。GUIよりも速く、より詳細な情報を提供し、作業を自動化するためのスクリプトを作成することもできます。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次