Adatgyűjtés a számítógépekről
Ez a minta csak Windows-platformokra vonatkozik.
A CimCmdlets modul parancsmagjai az általános rendszerfelügyeleti feladatok legfontosabb parancsmagjai. Az összes kritikus alrendszer-beállítás a WMI-ben érhető el. Emellett a WMI egy vagy több elem gyűjteményében lévő objektumokként kezeli az adatokat. Mivel a 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
Először egy olyan paranccsal kezdjük, amely adatokat gyűjt a helyi számítógépen lévő asztalokról.
Get-CimInstance -ClassName Win32_Desktop
Ez az összes asztali gép adatait adja vissza, függetlenül attól, hogy használatban vannak-e.
Feljegyzé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-sel kezdődő névvel rendelkezik, a tulajdonságokat szűrheti a cim használatával Select-Object
. Adja meg a -ExcludeProperty paramétert a "Cim*" értékkel. Példa:
Get-CimInstance -ClassName Win32_Desktop | Select-Object -ExcludeProperty "CIM*"
A metaadatok szűréséhez használjon egy 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 viszonylag tömör és teljes információt ad vissza a rendszer BIOS-járól a helyi számítógépen:
Get-CimInstance -ClassName Win32_BIOS
Processzoradatok 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 sztringje csak a SystemType tulajdonságot adja vissza:
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 a Win32_ComputerSystem is elérhetők. A szabványos megjelenített kimenetnek nincs szüksége szűrésre az OEM-adatok megadá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 valamilyen hardverből adnak vissza információt, csak olyan jók, mint az ön adatai. Egyes információkat 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 a 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-CimInstance
gyorsjaví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 a további adatokat adja vissza, mert a tulajdonságparaméter Get-CimInstance
a WMI-osztálypéldányokból visszaadott tulajdonságokat korlátozza, nem pedig a PowerShell-nek 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 felsorolása
Az Win32_OperatingSystem osztálytulajdonságok tartalmazzák a verzió és a szervizcsomag adatait. Csak ezeket a tulajdonságokat választhatja ki a verzióinformációk összegzésének lekéréséhez Win32_OperatingSystem:
Get-CimInstance -ClassName Win32_OperatingSystem |
Select-Object -Property BuildNumber,BuildType,OSType,ServicePackMajorVersion,ServicePackMinorVersion
Helyettesítő karaktereket is használhat a Tulajdonság paraméterrel. Mivel itt fontos a Build vagy a ServicePack kezdetű összes tulajdonság használata, 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 felhasználókra vonatkozó általános információk Win32_OperatingSystem osztálytulajdonságok közül választhatnak. Explicit módon kiválaszthatja a megjelenítendő tulajdonságokat az alábbi módon:
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 lemezterület és a helyi meghajtók szabad területének megtekintéséhez használhatja a Win32_LogicalDisk osztályt. Csak olyan példányokat kell látnia, amelynek 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 Win32_LogonSession WMI-osztályon keresztül általános információkat kaphat a felhasználókhoz társított bejelentkezési munkamenetekről:
Get-CimInstance -ClassName Win32_LogonSession
A felhasználó számítógépre való bejelentkezésének lekérése
Megjelenítheti az adott számítógéprendszerbe bejelentkezett felhasználót a Win32_ComputerSystem használatával. 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
A Win32_LocalTime WMI-osztály használatával lekérheti egy adott számítógépen az aktuális helyi időt.
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
Egy adott számítógépen lévő összes szolgáltatás állapotának megtekintéséhez helyileg használhatja a Get-Service
parancsmagot. Távoli rendszerek esetén a Win32_Service WMI-osztályt használhatja. Ha az eredményeket az Állapot, a Név és a DisplayName értékre is Select-Object
szűri, a kimeneti formátum majdnem megegyezik a következőből származóvalGet-Service
:
Get-CimInstance -ClassName Win32_Service |
Select-Object -Property Status,Name,DisplayName
A hosszú neveket tartalmazó szolgáltatások nevének teljes megjelenítéséhez használja a következő autoSize és Wrap paraméterét Format-Table
: . Ezek a paraméterek optimalizálják az oszlopok szélességét, és lehetővé teszik a hosszú nevek tördelésének a csonkolás helyett:
Get-CimInstance -ClassName Win32_Service |
Format-Table -Property Status, Name, DisplayName -AutoSize -Wrap