PowerShellのGet-Diskコマンド徹底解説|ディスク情報を素早く取得・確認する方法

Windows環境でディスクの構成や状態を確認したいとき、管理ツールを開かなくてもコマンド一発で情報が取得できたら便利ですよね。そんなときに役立つのが、PowerShellのGet-Diskコマンドです。
Get-Diskを使えば、接続されているすべての物理ディスクの情報を一覧で取得でき、容量や状態、メディアタイプ(SSD/HDD)などを簡単に確認することができます。この記事では、Get-Diskの基本的な使い方から、活用のポイント、よく使うオプションまで、実践的な例を交えてわかりやすく解説します。PowerShell初心者にも安心して読み進められる内容となっていますので、ぜひ参考にしてください。


PowerShellのGet-Diskコマンドとは?

Get-Diskは、Windows PowerShellで使用できるディスク情報取得用のコマンドレットです。主に物理ディスクの情報を取得するために使われ、以下のような情報が確認できます。

  • ディスク番号(Number)
  • 状態(OperationalStatus)
  • サイズ(Size)
  • パーティションスタイル(PartitionStyle)
  • メディアタイプ(MediaType:SSD/HDDなど)

このコマンドはWindows 8以降、またはWindows Server 2012以降の環境で使用可能です。従来のdiskpartwmicなどと比べ、より見やすく、スクリプトでも扱いやすいのが特長です。


Get-Diskの基本的な使い方

最も基本的な形式は以下のとおりです。

Get-Disk

このコマンドを実行すると、システムに接続されている全ての物理ディスクの情報が一覧で表示されます。以下のような結果が出力されます:

Number Friendly Name     OperationalStatus Total Size Partition Style MediaType
------ ------------- ----------------- ---------- ---------------- ----------
0 Samsung SSD 970 Online 500 GB GPT SSD
1 TOSHIBA HDD Online 1 TB MBR HDD

このように、一目でディスクの情報が分かります。


特定のディスクを指定して取得する

ディスクが複数ある環境では、特定のディスク番号を指定して情報を取得することもできます。

Get-Disk -Number 0

このコマンドは、ディスク番号0のディスク情報だけを出力します。スクリプト内で特定のディスクに対して操作を行いたい場合に便利です。


Get-Diskで取得できる主なプロパティ

Get-Diskで取得できる情報の一部を具体的に紹介します。

プロパティ名内容説明
Numberディスク番号(Disk 0、Disk 1など)
FriendlyNameデバイス名(メーカー名など)
OperationalStatus動作状態(Online, Offline など)
PartitionStyleパーティション形式(GPT/MBR)
Sizeディスクサイズ(バイト単位)
MediaTypeメディアタイプ(SSD/HDD)
BusType接続方式(SATA, NVMe, USBなど)
IsBootブート用ディスクかどうか
IsSystemシステムディスクかどうか

必要な情報だけを取り出したい場合は、Select-Objectと組み合わせて出力を絞ることができます。

Get-Disk | Select-Object Number, FriendlyName, Size, MediaType

条件を指定してフィルターする方法

特定の条件に合うディスクだけを抽出するには、Where-Objectを使います。

たとえば、SSDだけを表示するには以下のようにします。

Get-Disk | Where-Object MediaType -eq "SSD"

また、サイズが1TB以上のディスクだけを表示する例はこちら:

Get-Disk | Where-Object Size -ge 1TB

このように、Get-Diskはスクリプトと組み合わせて、細かなフィルタリングが可能です。


Get-Diskと他のコマンドレットとの連携

Get-Diskで取得した情報は、他のPowerShellコマンドと組み合わせることで、より高度な管理ができます。例えば、Initialize-DiskNew-Partitionなどと連携することで、新しいディスクの初期化やフォーマット処理も自動化できます。

例:未初期化のディスクを検出して初期化

Get-Disk | Where-Object PartitionStyle -eq 'RAW' | Initialize-Disk -PartitionStyle GPT

このスクリプトは、パーティションが未設定(RAW)のディスクを検出し、自動的にGPTで初期化します。


ディスク情報をCSVファイルで保存する

取得したディスク情報をCSVファイルで保存して、記録として残しておくこともできます。

Get-Disk | Select-Object Number, FriendlyName, Size, MediaType | Export-Csv -Path "diskinfo.csv" -NoTypeInformation

このコマンドで、現在のディスク情報が「diskinfo.csv」というファイルに出力されます。監査記録やトラブルシューティングの資料としても活用できます。


よくあるエラーと対処法

「Get-Disk は認識されません」

これは、PowerShellのバージョンが古いか、Storageモジュールが読み込まれていない場合に起こります。以下のようにしてモジュールを読み込みましょう。

Import-Module Storage

また、古いWindows 7などの環境ではGet-Diskがそもそも使えませんので、OSのバージョンも確認してください。


まとめ:Get-Diskで効率的なディスク管理を

Get-Diskは、PowerShellでディスクの基本情報を確認するために非常に便利なコマンドレットです。シンプルなコマンドで、複数ディスクの状態を一覧表示できるだけでなく、フィルタリングや他の操作との連携も可能です。これにより、手作業でディスク情報を確認する時間を大幅に短縮できます。

PowerShellに慣れていない方でも、まずはGet-Diskを試してみるところから始めてみてください。慣れてくると、システム管理やスクリプトの自動化において、欠かせないツールとなるでしょう。

タイトルとURLをコピーしました