Adatgyűjtés a számítógépekről

A CimCmdlets modul parancsmagjai az általános rendszerfelügyeleti feladatok legfontosabb parancsmagjai. Az összes kritikus alrendszerbeállítás a WMI-ben érhető el. A WMI emellett egy vagy több elem gyűjteményében lévő objektumokként kezeli az adatokat. Mivel Windows PowerShell objektumokkal is működik, és olyan folyamattal rendelkezik, amely lehetővé teszi egy vagy több objektum azonos módon történő kezelését, az általános WMI-hozzáférés lehetővé teszi, hogy néhány speciális feladatot nagyon kevés munkával végezzen.

Asztali beállítások listázása

Kezdjük egy paranccsal, amely információkat gyűjt a helyi számítógépen található asztalokról.

Get-CimInstance -ClassName Win32_Desktop

Ez az összes asztal adatait adja vissza, függetlenül attól, hogy használatban vannak-e vagy sem.

Megjegyzés

Egyes WMI-osztályok által visszaadott információk nagyon részletesek lehetnek, és gyakran tartalmaznak metaadatokat a WMI-osztályról.

Mivel ezeknek a metaadat-tulajdonságoknak a többsége Cim-el kezdődő névvel rendelkezik, a tulajdonságokat a következővel Select-Objectszűrheti: . Adja meg a -ExcludeProperty paramétert a "Cim*" értékkel. Például:

Get-CimInstance -ClassName Win32_Desktop | Select-Object -ExcludeProperty "CIM*"

A metaadatok szűréséhez használjon folyamatoperátort (|) a Get-CimInstance parancs eredményeinek elküldéséhez Select-Object -ExcludeProperty "CIM*".

BIOS-információk listázása

A WMI Win32_BIOS osztály meglehetősen tömör és teljes információt ad vissza a helyi számítógépen található BIOS rendszerről:

Get-CimInstance -ClassName Win32_BIOS

A feldolgozó adatainak listázása

Az általános processzoradatok a WMI Win32_Processor osztályával kérhetők le, bár valószínűleg szűrni szeretné az információkat:

Get-CimInstance -ClassName Win32_Processor | Select-Object -ExcludeProperty "CIM*"

A processzorcsalád általános leírási sztringjeként egyszerűen visszaadhatja a SystemType tulajdonságot :

Get-CimInstance -ClassName Win32_ComputerSystem | Select-Object -Property SystemType

SystemType
----------
X86-based PC

A számítógép gyártójának és modelljének felsorolása

A számítógépmodell adatai Win32_ComputerSystem is elérhetők. A szabványos megjelenített kimenetnek nincs szüksége szűrésre az OEM-adatok biztosításához:

Get-CimInstance -ClassName Win32_ComputerSystem
Name PrimaryOwnerName Domain    TotalPhysicalMemory Model                   Manufacturer
---- ---------------- ------    ------------------- -----                   ------------
MyPC Jane Doe         WORKGROUP 804765696           DA243A-ABA 6415cl NA910 Compaq Presario 06

Az ilyen parancsok kimenete, amelyek közvetlenül bizonyos hardverről adnak vissza információt, csak olyan jók, mint a saját adatai. Bizonyos adatokat a hardvergyártók nem megfelelően konfiguráltak, ezért előfordulhat, hogy nem érhetők el.

Telepített gyorsjavítások listázása

Az összes telepített gyorsjavítást Win32_QuickFixEngineering használatával listázhatja:

Get-CimInstance -ClassName Win32_QuickFixEngineering

Ez az osztály a következőhöz hasonló gyorsjavítások listáját adja vissza:

Source Description     HotFixID  InstalledBy   InstalledOn PSComputerName
------ -----------     --------  -----------   ----------- --------------
       Security Update KB4048951 Administrator 12/16/2017  .

A tömörebb kimenet érdekében érdemes lehet kizárni néhány tulajdonságot. Bár a Tulajdonság paraméter használatával csak a Get-CimInstancegyorsjavítás-azonosítót választhatja ki, valójában több információt ad vissza, mivel alapértelmezés szerint az összes metaadat megjelenik:

Get-CimInstance -ClassName Win32_QuickFixEngineering -Property HotFixID
InstalledOn           :
Caption               :
Description           :
InstallDate           :
Name                  :
Status                :
CSName                :
FixComments           :
HotFixID              : KB4533002
InstalledBy           :
ServicePackInEffect   :
PSComputerName        :
CimClass              : root/cimv2:Win32_QuickFixEngineering
CimInstanceProperties : {Caption, Description, InstallDate, Name…}
CimSystemProperties   : Microsoft.Management.Infrastructure.CimSystemProperties
...

A rendszer további adatokat ad vissza, mert a tulajdonságparaméterGet-CimInstance a WMI-osztálypéldányokból visszaadott tulajdonságokat korlátozza, nem pedig a PowerShellnek visszaadott objektumot. A kimenet csökkentéséhez használja a következőt Select-Object:

Get-CimInstance -ClassName Win32_QuickFixEngineering -Property HotFixId |
    Select-Object -Property HotFixId
HotFixId
--------
KB4048951

Az operációs rendszer verzióadatainak listázása

A Win32_OperatingSystem osztálytulajdonságok tartalmazzák a verzió- és szervizcsomag-információkat. Csak ezeket a tulajdonságokat választhatja ki, hogy verzióinformációs összegzést kapjon Win32_OperatingSystem:

Get-CimInstance -ClassName Win32_OperatingSystem |
  Select-Object -Property BuildNumber,BuildType,OSType,ServicePackMajorVersion,ServicePackMinorVersion

Helyettesítő karaktereket is használhat a Select-ObjectTulajdonság paraméterrel. Mivel a Build vagy a ServicePack tulajdonsággal kezdődő összes tulajdonságot fontos itt használni, ezt a következő űrlapra rövidíthetjük:

Get-CimInstance -ClassName Win32_OperatingSystem | Select-Object -Property Build*,OSType,ServicePack*
BuildNumber             : 18362
BuildType               : Multiprocessor Free
OSType                  : 18
ServicePackMajorVersion : 0
ServicePackMinorVersion : 0

Helyi felhasználók és tulajdonos listázása

A helyi általános felhasználói adatok – a licencelt felhasználók száma, az aktuális felhasználók száma és a tulajdonos neve – Win32_OperatingSystem osztálytulajdonságok közül választhatnak. A megjelenítendő tulajdonságokat explicit módon az alábbi módon választhatja ki:

Get-CimInstance -ClassName Win32_OperatingSystem |
  Select-Object -Property NumberOfLicensedUsers,NumberOfUsers,RegisteredUser

A helyettesítő karaktereket használó tömörebb verzió a következő:

Get-CimInstance -ClassName Win32_OperatingSystem | Select-Object -Property *user*

Szabad lemezterület lekérése

A helyi meghajtók lemezterületének és szabad helyének megtekintéséhez használhatja a Win32_LogicalDisk WMI-osztályt. Csak olyan példányokat kell látnia, amelyben a DriveType értéke 3 – a WMI által a rögzített merevlemezekhez használt érték.

Get-CimInstance -ClassName Win32_LogicalDisk -Filter "DriveType=3"
DeviceID DriveType ProviderName VolumeName Size         FreeSpace   PSComputerName
-------- --------- ------------ ---------- ----         ---------   --------------
C:       3                      Local Disk 203912880128 65541357568 .
Q:       3                      New Volume 122934034432 44298250240 .
Get-CimInstance -ClassName Win32_LogicalDisk -Filter "DriveType=3" |
  Measure-Object -Property FreeSpace,Size -Sum |
    Select-Object -Property Property,Sum
Property           Sum
--------           ---
FreeSpace 109839607808
Size      326846914560

Bejelentkezési munkamenet adatainak lekérése

A felhasználókhoz társított bejelentkezési munkamenetekről a Win32_LogonSession WMI-osztályon keresztül kaphat általános információkat:

Get-CimInstance -ClassName Win32_LogonSession

A felhasználó bejelentkeztetése egy számítógépre

Az adott számítógéprendszerbe bejelentkezett felhasználót Win32_ComputerSystem használatával jelenítheti meg. Ez a parancs csak a rendszer asztalára bejelentkezett felhasználót adja vissza:

Get-CimInstance -ClassName Win32_ComputerSystem -Property UserName

Helyi idő lekérése számítógépről

Egy adott számítógépen az aktuális helyi időt a Win32_LocalTime WMI-osztály használatával kérdezheti le.

Get-CimInstance -ClassName Win32_LocalTime
Day            : 23
DayOfWeek      : 1
Hour           : 8
Milliseconds   :
Minute         : 52
Month          : 12
Quarter        : 4
Second         : 55
WeekInMonth    : 4
Year           : 2019
PSComputerName :

A szolgáltatás állapotának megjelenítése

Az adott számítógépen található összes szolgáltatás állapotának megtekintéséhez helyileg használhatja a Get-Service parancsmagot. Távoli rendszerekhez használhatja a Win32_Service WMI-osztályt. Ha az eredményeket az Állapot, a Név és a DisplayName értékre is Select-Object szűri, a kimeneti formátum szinte megegyezik a következőből származóvalGet-Service:

Get-CimInstance -ClassName Win32_Service |
    Select-Object -Property Status,Name,DisplayName

A rendkívül hosszú névvel rendelkező alkalmi szolgáltatások nevének teljes megjelenítésének engedélyezéséhez érdemes lehet az Automatikus méretezés és a Tördelés paraméterekkel használni Format-Table az oszlopszélesség optimalizálásához és a hosszú nevek tördelésének engedélyezéséhez a csonkolás helyett:

Get-CimInstance -ClassName Win32_Service |
    Format-Table -Property Status,Name,DisplayName -AutoSize -Wrap