Windowsのコマンドプロンプト(cmd)でCドライブの総容量と空き容量を見るなら、管理者として開いてfsutil volume diskfree C:を実行します。空き容量だけなら通常のcmdでdir C:\を使えます。PowerShellのGet-VolumeとGet-CimInstanceは別のコマンドなので、cmdから呼び出す場合はpowershell.exe -NoProfile -Commandを付けます。
すぐ使う容量確認コマンドと実行する画面
| 目的 | 実行する画面 | コマンド・注意 |
|---|---|---|
| Cドライブの総容量と空き容量 | 管理者のコマンドプロンプト | fsutil volume diskfree C: |
| Cドライブの空き容量だけ | 通常のコマンドプロンプト | dir C:\ の末尾。PowerShellのdirは同じ表示にならない。 |
| ローカルボリュームの一覧 | Windows PowerShell | Get-Volume。Sizeが容量、SizeRemainingが空き。 |
| cmdからローカル固定ドライブの一覧 | コマンドプロンプト | 下のpowershell.exeでGet-CimInstanceを呼び出す。 |
| ネットワークドライブの容量 | 接続済みの同じユーザーのPowerShell | DriveType=4とProviderNameで共有先を確認。サーバー全体とは区別。 |
cmdから固定ドライブの情報を表示する例です。SizeとFreeSpaceはバイト単位です。Cドライブだけなら、fsutil volume diskfree C:でも確認できます。
powershell.exe -NoProfile -Command "Get-CimInstance -ClassName Win32_LogicalDisk -Filter 'DriveType=3' | Select-Object DeviceID,Size,FreeSpace"
Windows Terminalは複数のシェルを開くためのアプリです。タブがPowerShellかコマンドプロンプトかを確認し、同じものとしてコードを貼り付けないでください。PowerShellのdirは通常Get-ChildItemの別名なので、cmdの空き領域の集計行を見たい時はcmd側で実行します。
最初に確認するポイント
| 症状・条件 | 主な原因 | 最初の確認 |
|---|---|---|
| wmic logicaldisk get size,freespace,captionを実行すると、wmicが認識されない | WMICは非推奨で、Windows 11の導入・更新状態で有無が変わり、25H2の機能更新時にはアンインストールされます。WMI自体は残ります。 | WMICを再追加するのではなく、Get-VolumeまたはGet-CimInstance Win32_LogicalDiskへ置き換えます。 |
| fsutil volume diskfree C:でアクセス拒否や権限エラーが出る | fsutilは高度なファイルシステム管理ツールで、多くの操作に管理者権限が必要です。 | スタートからターミナルまたはコマンド プロンプトを管理者として開き、同じコマンドを再実行します。権限を上げられない場合はdir C:\またはPowerShellのGet-Volumeを使います。 |
| diskpartのlist diskにあるFreeと、エクスプローラーの空き容量が一致しない | list diskのFreeは主に未割り当て領域を示し、NTFSなどのボリューム内でファイルに使える空き容量とは意味が異なります。 | 保存可能な空き容量はGet-VolumeのSizeRemainingまたはfsutil volume diskfreeで確認します。 |
| 空き容量はあるのにWindows Updateやアプリのインストールが失敗する | 一時領域、システム予約、ユーザーごとの使用量、更新処理が必要とする追加領域など、表示上の空き容量以外が影響する場合があります。 | 設定 > システム > ストレージでカテゴリ別使用量を確認し、ストレージ センサーや一時ファイルの候補を確認します。 |
安全な対処手順
1. Cドライブの総容量と空き容量をfsutilで確認する
管理者のコマンドプロンプトでfsutil volume diskfree C:を実行します。fsutil volumeの公式例はこの構文を案内しています。出力には総バイト数や空きバイト数など複数の値があるため、数字だけでなく項目名も読みます。クォータや予約領域などの条件がある環境では、すべての空き容量の項目が同じになるとは限りません。
- スタートを右クリックし、ターミナル(管理者)を開く
- 確認するドライブ文字を指定してfsutilを実行する
- 利用可能な空きバイト数とボリュームの総バイト数を確認する
- Dドライブなら末尾をD:へ置き換える
fsutil volume diskfree C:
注意:fsutilにはボリュームのマウント解除やファイルシステム変更など危険なサブコマンドもあります。本記事では読み取り専用のvolume diskfreeだけを実行します。
fsutilの権限についてはMicrosoftのfsutil管理者要件を確認できます。権限エラーで管理者を使用する場合も、読み取りのvolume diskfreeと、マウント解除や設定変更を混同しないでください。
2. 権限を上げずに空き容量だけをdirで確認する
現在のドライブでdirを実行すると、一覧の末尾に残りの空き容量がバイト単位で表示されます。Cドライブを明示するならdir C:\を使います。総容量は表示されないため、空き容量だけを素早く確認したい場面向けです。
- コマンド プロンプトを開く
- dir C:\を実行する
- 最後の『空き領域』またはfree bytesに相当する行を確認する
dir C:\
注意:dirの末尾はファイルシステム上の空き容量で、ドライブの総容量は表示しません。フォルダー一覧が長くても最後の集計行だけを確認します。
3. ローカルボリュームをGiB単位でPowerShell表示する
PowerShellのGet-Volumeはボリュームの情報を返し、SizeRemainingとSizeを使って空き容量と容量を確認できます。次の例はドライブ文字のあるローカルボリュームを抽出するので、ネットワーク共有やドライブ文字のないボリュームを含む一覧ではありません。Get-Volumeの公式資料は、動的ボリュームのサポートに制約があることも説明しています。
- PowerShellまたはWindows Terminalを開く
- Get-Volumeで全ボリュームを確認する
- ドライブ文字のあるボリュームだけを抽出し、GiBへ換算する
- HealthStatusがHealthy以外なら、容量とは別にストレージ状態を確認する
Get-Volume
Get-Volume | Where-Object DriveLetter | Select-Object DriveLetter,FileSystemLabel,@{Name='SizeGiB';Expression={[math]::Round($_.Size/1GB,2)}},@{Name='FreeGiB';Expression={[math]::Round($_.SizeRemaining/1GB,2)}}
この計算の1GBは1,073,741,824バイトなので、列名はGiBとしています。十進のGB(1,000,000,000バイト)と区別してください。PowerShellの数値リテラルの公式仕様でもGBの乗数は1024の3乗です。100,000,000,000バイトは100 GBですが、この計算では約93.13 GiBとなります。丸め前のSizeとSizeRemainingはバイトで比較できます。
4. 旧WMICコマンドはGet-CimInstanceへ置き換える
WMICで使っていたWin32_LogicalDiskの情報は、PowerShellのGet-CimInstanceから取得できます。DriveType=3で固定ディスクに絞り、DeviceID、Size、FreeSpaceを表示します。WMI基盤は残っているため、WMIC実行ファイルを再インストールせずに同等の情報を取得できます。
- PowerShellを開く
- Win32_LogicalDiskをDriveType=3で取得する
- SizeとFreeSpaceを確認する
- 既存のバッチから呼ぶ場合はpowershell -NoProfile -Commandで置き換える
Get-CimInstance Win32_LogicalDisk -Filter "DriveType=3" | Select-Object DeviceID,Size,FreeSpace
powershell -NoProfile -Command "Get-CimInstance Win32_LogicalDisk -Filter 'DriveType=3' | Select-Object DeviceID,Size,FreeSpace"
Microsoftは25H2の案内でWMICを再追加できる一方、将来の削除を理由に再導入を推奨していません。導入済みのOSでの提供状況に関係なく、ここでは現行の代替コマンドを使います。
5. diskpartはディスク構成の確認に限定する
diskpartはディスク、パーティション、ボリュームを管理する強力なツールです。list diskやlist volumeは構成確認に使えますが、ファイルを保存できる空き容量はGet-Volumeやfsutilで確認します。diskpart内ではlistだけを使い、確認後はexitで終了します。
- 管理者のターミナルでdiskpartを起動する
- list diskで物理ディスクを確認する
- list volumeでドライブ文字とボリュームを確認する
- exitでdiskpartを終了する
diskpart
list disk
list volume
exit
注意:diskpartではclean、delete、format、convert、select後の変更コマンドを実行しないでください。対象を取り違えるとデータやパーティションを失う可能性があります。
6. 容量不足の原因はWindowsのストレージ設定で確認する
コマンドで空き容量が少ないと分かったら、設定 > システム > ストレージで、アプリ、一時ファイル、ドキュメント、その他などの内訳を確認します。ストレージ センサーは一時ファイル、ゴミ箱、OneDriveのローカルコピーなどを条件に応じて整理できますが、ダウンロードフォルダーやクラウドファイルの扱いは設定を確認してから有効にします。
- 設定 > システム > ストレージを開く
- 使用量の大きいカテゴリを確認する
- 一時ファイルは削除対象を1項目ずつ確認する
- ストレージ センサーの実行頻度と対象期間を確認する
注意:空き容量を増やす目的だけでdefrag、sfc、fsutilの設定変更、diskpartのパーティション操作を実行しないでください。容量確認と保守作業は別の手順です。
よくある質問
wmicが使えないのはWindowsが壊れているからですか?
WMICがないことだけで故障とは判断できません。WMICは非推奨で、Windows 11の導入方法や機能更新によって実行ファイルの有無が変わります。Microsoftは25H2の機能更新時にWMICをアンインストールすると説明しています。WMI基盤自体の廃止とは別なので、Get-CimInstanceなどを使います。この記事の容量確認のためにWMICを再導入する必要はありません。
fsutilの『利用可能な空きバイト数』と『合計空きバイト数』は何が違いますか?
ユーザーごとのクォータがある環境では、利用可能な空き容量とボリューム全体の空き容量が異なる場合があります。MicrosoftのGetDiskFreeSpaceExの仕様も、呼び出すユーザーに利用可能な値と、全体の空きバイト数を区別しています。実行したユーザー・権限と、どの項目を見たかを揃えて比較し、管理者で見た値を別ユーザーの保存可能量と決めつけないでください。
diskpartのlist diskに表示されるFreeを空き容量として使えますか?
そのFreeは主にディスク上の未割り当て領域で、Cドライブ内にファイルを保存できる空き容量とは意味が異なります。日常的な空き容量はGet-VolumeのSizeRemaining、fsutil volume diskfree、またはエクスプローラーで確認してください。
ファイルサーバー・ネットワークドライブの容量を確認する
ネットワーク共有の確認は、クライアントPCのCドライブの容量とは別です。既に接続済みのユーザーでWindows PowerShellを開き、次の読み取りコマンドを使います。
Get-CimInstance -ClassName Win32_LogicalDisk -Filter "DriveType=4" |
Select-Object DeviceID, ProviderName, Size, FreeSpace
Win32_LogicalDiskの公式定義でDriveType=3はローカルディスク、4はネットワークドライブです。ProviderNameで対象の共有先を確認します。この一覧にないUNCパスの共有が、存在しない・容量ゼロだと判断しないでください。未取得のSizeやFreeSpaceはゼロとは分けて扱います。
アクセスできる共有の空き領域をcmdで確認する例です。serverとshareは実際の共有先へ置き換えます。総容量の表示には使いません。
dir "\\server\share\"
共有が返す容量はクォータやストレージ製品の設定などに影響されることがあります。共有から見える容量と、ファイルサーバー全体のディスク容量・ストレージプールの容量は同じとは限りません。全体を管理する目的なら、権限のあるサーバー上で対象ボリュームを確認します。
管理者として実行した容量表示が、ファイルを保存する別のユーザーのクォータ上限まで示しているとは限らないため、実行したアカウントも確認します。
エクスプローラーではZ:が見えるのに、管理者のシェルでは見えない場合は、同じユーザーの通常のシェルでも確認します。Microsoftの昇格した画面でネットワークドライブが見えない事例では、接続はログオンセッションに依存すると説明しています。容量確認のためにUACを無効化したり、レジストリ変更を先に行ったりする必要はありません。
サーバーを遠隔取得する場合はGet-CimInstanceのCimSession/ComputerNameの仕様と組織の認証・接続設定を確認します。共有パスを指定しただけでローカルコマンドが自動でサーバー全体を調べるわけではありません。
公式情報
画面や仕様が異なる場合は、利用中の製品・契約・管理ポリシーを確認したうえで公式情報を参照してください。
- Microsoft Learn: fsutil volume diskfree
- Microsoft Learn: Get-Volume
- Microsoft Learn: Win32_LogicalDisk class
- Microsoft Learn: Windows 11 25H2 and WMIC removal
- Microsoft Learn: dir command and remaining free bytes
- Microsoft Learn: diskpart command and safety scope
まとめ
総容量と空き容量は、対象ドライブ、実行するシェル、ユーザー、単位を揃えて確認します。ローカルの容量はfsutilやGet-Volume、ネットワーク共有は共有先とクォータも確認し、diskpartの未割り当て領域とは分けて読みましょう。容量を表示するコマンドは、ファイル削除や容量不足の修復を自動で行うものではありません。
既存記事から引き継いだ画面例
画面はWindowsやアプリの更新で変わることがあります。名称が異なる場合は、前述の現行手順を優先してください。










コメント