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以降の環境で使用可能です。従来のdiskpart
やwmic
などと比べ、より見やすく、スクリプトでも扱いやすいのが特長です。
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-Disk
やNew-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
を試してみるところから始めてみてください。慣れてくると、システム管理やスクリプトの自動化において、欠かせないツールとなるでしょう。