A CIMCmdlets modul

A CIM cmdletek egy külön modulban foglalnak helyet, melynek neve – nem meglepő módon – CIMcmdlets. Ezeket le is kérdezhetjük:

PS C:\> get-command -Module CimCmdlets | Sort-Object -Property noun

 

CommandType     Name                                               Version

-----------     ----                                               -------

Cmdlet          Import-BinaryMiLog                                 1.0.0.0

Cmdlet          Export-BinaryMiLog                                 1.0.0.0

Cmdlet          Get-CimAssociatedInstance                          1.0.0.0

Cmdlet          Get-CimClass                                       1.0.0.0

Cmdlet          Register-CimIndicationEvent                        1.0.0.0

Cmdlet          New-CimInstance                                    1.0.0.0

Cmdlet          Remove-CimInstance                                 1.0.0.0

Cmdlet          Get-CimInstance                                    1.0.0.0

Cmdlet          Set-CimInstance                                    1.0.0.0

Cmdlet          Invoke-CimMethod                                   1.0.0.0

Cmdlet          Remove-CimSession                                  1.0.0.0

Cmdlet          Get-CimSession                                     1.0.0.0

Cmdlet          New-CimSession                                     1.0.0.0

Cmdlet          New-CimSessionOption                               1.0.0.0

Láthatjuk, hogy a korábbi WMI cmdletekhez képest több parancs áll rendelkezésünkre. Az univerzális Get‑WMIObject helyett, mellyel a WMI példányokat és osztályokat is le tudtuk kérdezni, most két külön cmdletet kapunk: Get-CIMInstance  és Get-CIMClass .

Példaként nézzük, hogy milyen osztályaink vannak, amelyeknek a nevében szerepel az „operatingsystem” kifejezés:

PS C:\> Get-CimClass -ClassName *operatingsystem*

 

 

   NameSpace: ROOT/cimv2

 

CimClassName                        CimClassMethods      CimClassProperties

------------                        ---------------      ------------------

CIM_OperatingSystem                 {Reboot, Shutdown}   {Caption, Descript...

Win32_OperatingSystem               {Reboot, Shutdown... {Caption, Descript...

Win32_OperatingSystemQFE            {}                   {Antecedent, Depen...

Win32_OperatingSystemAutochkSetting {}                   {Element, Setting}

Win32_SystemOperatingSystem         {}                   {GroupComponent, P...

CIM_OperatingSystemSoftwareFeature  {}                   {GroupComponent, P...

Nézzük konkrétan meg a Win32_OperatingSystem osztály várhatóan egy példányát:

PS C:\> $r = Get-CimInstance -ClassName Win32_OperatingSystem

PS C:\> $r

 

SystemDirectory     Organization BuildNumber RegisteredUser SerialNumber

---------------     ------------ ----------- -------------- ------------

C:\WINDOWS\system32              10586       Tibi           00329-10280-000...

Láthatjuk, hogy a nézet táblázatos lett a korábbi lista helyett. A példány típusa is új:

PS C:\> $r.GetType().fullname

Microsoft.Management.Infrastructure.CimInstance

Ha megnézzük a tulajdonságokat részletesen, akkor ott is felfigyelhetünk néhány érdekességre:

PS C:\> $r | fl *

 

 

Status                                    : OK

Name                                      : Microsoft Windows 10 Enterprise|C:

                                            \WINDOWS|\Device\Harddisk0\Partiti

                                            on2

FreePhysicalMemory                        : 13250684

FreeSpaceInPagingFiles                    : 16777216

FreeVirtualMemory                         : 29285920

Caption                                   : Microsoft Windows 10 Enterprise

Description                               :

InstallDate                               : 2015.12.19. 3:49:15

CreationClassName                         : Win32_OperatingSystem

CSCreationClassName                       : Win32_ComputerSystem

CSName                                    : STLENO

CurrentTimeZone                           : 60

Distributed                               : False

LastBootUpTime                            : 2016.03.14. 10:18:37

LocalDateTime                             : 2016.03.14. 16:41:51

MaxNumberOfProcesses                      : 4294967295

MaxProcessMemorySize                      : 137438953344

WindowsDirectory                          : C:\WINDOWS

PSComputerName                            :

CimClass                                  : root/cimv2:Win32_OperatingSystem

CimInstanceProperties                     : {Caption, Description, InstallDate

                                            , Name...}

CimSystemProperties                       : Microsoft.Management.Infrastructur

                                            e.CimSystemProperties

Nem látunk a tulajdonságok listájában aláhúzással kezdődő tulajdonságneveket! Ilyenekre gondolok:

__GENUS                                   : 2

__CLASS                                   : Win32_OperatingSystem

__SUPERCLASS                              : CIM_OperatingSystem

__DYNASTY                                 : CIM_ManagedSystemElement

__RELPATH                                 : Win32_OperatingSystem=@

__PROPERTY_COUNT                          : 64

__DERIVATION                              : {CIM_OperatingSystem, CIM_LogicalE

                                            lement, CIM_ManagedSystemElement}

__SERVER                                  : STLENO

__NAMESPACE                               : root\cimv2

__PATH                                    : \\STLENO\root\cimv2:Win32_Operatin

                                            gSystem=@

Ebből a szempontból a legfájóbb a __Path hiánya, amivel közvetlenül meg lehetne címezni ezt a példányt. Pedig a helye megvan a CimSystemProperties tulajdonság alatt:

PS C:\> $r.CimSystemProperties

 

Namespace  ServerName ClassName             Path

---------  ---------- ---------             ----

root/cimv2 STLENO     Win32_OperatingSystem



Word To HTML Converter