Vaadake kindlasti eelmise sarja artikleid:
- Lugege, kuidas automatiseerida Windows PowerShelliga
- Õpime PowerShellis kasutama kommuteid
- PowerShellis Objektide kasutamise õppimine
- PowerShellis õppimise vormindamine, filtreerimine ja võrdlemine
- Õpi Remotingi kasutamist PowerShellis
Ja jääge häälestatuks ülejäänud sarja kogu nädala jooksul.
Sissejuhatus
WMI tähistab Windows Management Instrumentation. Sõna "mõõteriistad" viitab sellele, et WMI võimaldab teil saada teavet oma arvuti sisemise seisukorra kohta, nagu teie auto armatuurlaudade vahendid, saate teavet oma autode sisemiste komponentide seisundist.
WMI koosneb hoidlast, mis sisaldab klasse, mis esindavad komponente, mida võiks teie masinas hallata. Sellega me mõtleme lihtsalt sellepärast, et WMI-l on Win32_Battery klass, ei tähenda, et teie masin sisaldab aku. Seejärel saab neid klasse küsida kohalikult või isegi kogu võrgu kaudu, kasutades päringukeele, mis on väga sarnane SQL-ile nimega WQL. Kuid WMI on teadaolevalt väga ebausaldusväärne, enamasti tänu sellele, et see põhineb RPC-il (Remote Procedure Calls), mis teevad mõned hullumeelsed asjad nende portidega, mida nad suhtlevad.
Alates Windows 8 ja Server 2012-st on WMI järk-järgult kasutusel ühise infomudeli või CIM-i lühikeseks kasutamiseks. Ainus erinevus WMI ja CIM vahel on transpordiprotokollid, mida nad kasutavad. Kuigi WMI täidab kaugprotseduurikõnede abil päringuid, kasutab CIM HTTP-d, mis tundub olevat tohutu erinevus. Taustaprogrammis räägitakse ikka veel sama teabe hoidlasse.
WMI kasutamine
Kõige lihtsam ja hõlpsam viis uurida WMI kaudu saadaval olevat teavet on hankida tasuta WMI Object Browseri koopia. Meile meeldib see üks. Kui olete allalaaditud, laske sellel üles ja WMI-klasside sirvimiseks on teil graafiline liides.
Rakenduse alumisel poolel näete, et meil on klassi kaks eksemplari.
Get-WmiObject -Query “SELECT * FROM Win32_LogicalDisk”
Get-WmiObject –Class Win32_LogicalDisk
Get-WmiObject -Class Win32_LogicalDisk -ComputerName Viper –Credential viperadministrator
CIM-i kasutamine
Pidage meeles, et CIM on saadaval ainult operatsioonisüsteemides Windows 8 ja Server 2012, edasi liikudes on see kindlasti ka viis.
Get-CimInstance –ClassName Win32_LogicalDisk
Tegelikult arendas WMI Microsofti poolt täiesti eraldi meeskonda, kuid hiljem võtsid üle PowerShelli eest vastutavad inimesed. Nad olid need, kes märkasid, et WMI-ga seonduva segaduse korvamiseks on väga raske. Selle olukorra parandamiseks üritavad nad muuta WMI ja CIM-i veelgi kättesaadavaks, kirjutades ümbrisprofiili cmdletti, mis kasutavad WMI-d ja CIM-i kapoti all. Ainus võimalus kontrollida, kas käsiraamat on ümbris, vaadake dokumentatsiooni. Näiteks Get-Hotfixi käsiraamat on Win32_QuickFixEngineering-klassi ümbris, nagu see on dokumentatsioonis näha.
Get-HotFix –ComputerName localhost