このエントリーをはてなブックマークに追加


PowerShellでWMIを使用するサンプル

PowerShellからWMIを使用する方法を以下に記します。


関連記事

以下、VBScriptでWMIを使用するサンプルコードを公開しています。

Get-WmiObject コマンドレットを使用する

Get-WmiObjectコマンドレットを使用することにより簡単にWMIにアクセスすることができます。

Get-WmiObjectを使ってみる

Get-WmiObjectにWin32_ComputerSystemを指定して実行した例です。

PS C:\> Get-WmiObject Win32_ComputerSystem


 Domain              : WORKGROUP
 Manufacturer        : LENOVO
 Model               : ABCDEFG
 Name                : THINKPAD
 PrimaryOwnerName    : sakura
 TotalPhysicalMemory : 8428290048

WMIによる情報が簡単に取れていることが確認できます。

SQLを記述する

以下のように-queryを指定することによりSQL構文を記述し出力することができます。
Win32_Serviceを指定し、StateがRunningになっているものを出力しています。
ft(Format-Tableにて出力を整形しています。

PS C:\> Get-WmiObject -query "SELECT * FROM Win32_Service WHERE State=""Running""" | ft

           ExitCode Name                          ProcessId StartMode           State               Status
           -------- ----                          --------- ---------           -----               ------
                  0 AdobeARMservice                    1600 Auto                Running             OK
                  0 AeLookupSvc                        1020 Manual              Running             OK
                  0 Appinfo                            1020 Manual              Running             OK
                  0 Apple Mobile Dev...                1640 Auto                Running             OK
                  0 AudioEndpointBui...                 316 Auto                Running             OK
                  0 Audiosrv                            988 Auto                Running             OK
                  0 AVControlCenter                    1684 Auto                Running             OK
                  0 BFE                                1400 Auto                Running             OK
                  0 BITS                               1020 Auto                Running             OK
                  0 Bonjour Service                    1796 Auto                Running             OK
                  0 BrokerInfrastruc...                 680 Auto                Running             OK
                  0 Browser                            1020 Manual              Running             OK
<snip>

その他サンプル

以下は、Win32_Processorを出力した時の結果です。

PS C:\> Get-WmiObject Win32_Processor


Caption           : Intel64 Family 6 Model 58 Stepping 9
DeviceID          : CPU0
Manufacturer      : GenuineIntel
MaxClockSpeed     : 2501
Name              : Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz
SocketDesignation : CPU Socket - U3E1

以下は、Win32_LogicalDiskを指定し、Format-Table(ft)にて整形して出力した結果です。

PS C:\> Get-WmiObject Win32_LogicalDisk | Format-Table

DeviceID                      DriveType ProviderName                  FreeSpace                Size VolumeName
--------                      --------- ------------                  ---------                ---- ----------
C:                                    3                             58719133696        126106988544 Windows8_OS
D:                                    5
E:                                    2                             46781014016         63467155456

以上、PowerShellでWMIを使用するサンプルでした。



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-04-22 (水) 20:46:05