システム管理者や情シス担当者にとって、複数台のPCやサーバーのハードウェア情報・OS情報を一括で把握することは欠かせません。
PowerShellを使えば、標準コマンドレットだけでCPU・メモリ・ディスク・ネットワーク・OSバージョンなどをまとめて取得できます。
この記事では、実用的な一括取得スクリプト例と出力方法を詳しく解説します。
🧠 PowerShellで取得できる主なシステム情報
PowerShellでは以下のような情報を簡単に取得できます。
| 項目 | コマンドレット | 内容 |
|---|---|---|
| OS情報 | Get-CimInstance Win32_OperatingSystem | バージョン、インストール日、ビルド番号 |
| CPU情報 | Get-CimInstance Win32_Processor | CPU名、コア数、スレッド数、クロック周波数 |
| メモリ情報 | Get-CimInstance Win32_PhysicalMemory | メモリ容量、スロット数、メーカー |
| ディスク情報 | Get-CimInstance Win32_LogicalDisk | ドライブレター、空き容量、総容量 |
| ネットワーク情報 | Get-CimInstance Win32_NetworkAdapterConfiguration | IPアドレス、MACアドレス |
| BIOS情報 | Get-CimInstance Win32_BIOS | BIOSバージョン、リリース日 |
💻 システム情報を一括取得するスクリプト例
以下のスクリプトをPowerShellに保存して実行すると、主要なハードウェア情報をまとめて取得できます。
🗂 結果をCSVで出力する場合
複数台の端末を管理する場合は、CSVファイルに出力しておくと便利です。
⚙️ リモートPCから取得する方法
Active Directory環境などで、他の端末の情報も取得したい場合は次のようにします。
PowerShellリモーティングを有効化すれば、ドメイン内の端末を横断的に管理できます。
(事前に Enable-PSRemoting -Force を実行しておく必要があります。)
🔒 実行時の注意点
-
管理者権限でPowerShellを起動する必要があります。
-
一部の情報(BIOS・ネットワーク)取得にはセキュリティ制限がかかる場合があります。
-
WinRM通信がブロックされている環境では、リモート取得が失敗する場合があります。
✅ まとめ
| 要点 | 内容 |
|---|---|
| スクリプト1本で主要なシステム情報を取得可能 | OS・CPU・メモリ・ディスク・ネットワーク・BIOS |
| CSV出力で資産管理にも活用できる | 複数端末の一覧作成に最適 |
| リモートPC情報も取得可能 | Get-CimInstance -ComputerNameを活用 |
PowerShellを使えば、GUI操作より数倍早く正確に情報を収集できます。
システム管理の自動化・標準化の第一歩として、ぜひこのスクリプトを活用してみてください。
