国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開發(fā) > PowerShell > 正文

探索PowerShell(十三) WMI對(duì)象介紹

2020-10-29 21:09:55
字體:
供稿:網(wǎng)友
我記得在xp時(shí)代,經(jīng)常使用的工具有一個(gè)叫做WMI Administrative Tools,是微軟官方提供的用來查看、編輯WMI對(duì)象的,只是現(xiàn)在好似不支持新的系統(tǒng)了。但是,在Win7、Server 2008下,這些功能都可以方便的通過PowerShell來完成。

首先,先來認(rèn)識(shí)一下什么是WMI對(duì)象:

WMI是作為一個(gè)基本的數(shù)據(jù)庫(kù)存在于Windows系統(tǒng)中的。我們可以連接到WMI服務(wù)請(qǐng)求查詢其中所包含的信息。WMI包括了系統(tǒng)方方面面的信息,包括:
• 機(jī)器信息:制造商、型號(hào)、序列號(hào)等
• BIOS信息
• OS信息
• CPU信息:種類、制造商、速度、版本
• 服務(wù)器內(nèi)存總量
• 磁盤信息:容量、格式等
• 網(wǎng)絡(luò)信息:MAC、IP等
• 其他
可以看出WMI內(nèi)容是多么的豐富,幾乎包括了計(jì)算機(jī)的方方面面。

利用PowerShell查看WMI成員

在PowerShell中通過以下命令列出WMI對(duì)象:
get-wmiObject -list -namespace “root/CIMV2″ <enter>

需要具體查看某個(gè)類的成員,使用下面的命令(例如類"win32_process"):

get-wmiobject -class win32_process -namespace "root/cimv2" | get-member 

可以看到每個(gè)有的成員是屬性(Property),而有的則是方法(Method)。

那么,有兩個(gè)問題:

為什么要使用-namespace "root/cimv2"?

cimv2是WMI的一個(gè)命名空間,每個(gè)命名空間下有不同的WMI對(duì)象成員。cimv2是其默認(rèn)設(shè)置??梢园凑找韵虏襟E進(jìn)行修改:

控制面板 -> 管理工具 -> 計(jì)算機(jī)管理 -> 服務(wù)和應(yīng)用程序 -> 右鍵"WMI控制" -> 屬性 -> 高級(jí)

參數(shù)"-namespace"并非必須,但是,使用它有兩個(gè)好處,一是保證我們能準(zhǔn)確的查看指定命名空間下的WMI對(duì)象,因?yàn)橛袝r(shí)默認(rèn)命名空間并非我們所希望查看的;二是如果不指定命名空間,被設(shè)置過的計(jì)算機(jī)可能拒絕我們的訪問請(qǐng)求。

注:因?yàn)槲沂褂糜⑽陌嫦到y(tǒng),上述步驟中個(gè)別名稱可能不準(zhǔn)確。



在如上圖所示的界面,即可修改默認(rèn)路徑。

另一個(gè)問題是,查看成員的類型有什么用?

如果一個(gè)成員是方法,那么,我們可以調(diào)用它。如果一個(gè)成員是屬性,我們則可以查看它的值。但是,需要注意的是,不同的屬性成員有不同的數(shù)據(jù)結(jié)構(gòu),有的是"System.String",有的是"System.UInt32",有的則是"System.String[ ]",在使用時(shí),應(yīng)當(dāng)注意數(shù)據(jù)格式,否則會(huì)報(bào)錯(cuò)的。

如果我們需要管理網(wǎng)絡(luò)中的計(jì)算機(jī),則需要指定計(jì)算機(jī)名稱:

get-wmiObject -list -namespace “root/CIMV2″ -computername 計(jì)算機(jī)名 <enter>
好了,現(xiàn)在來具體操作,查看具體信息。

例:

查看BIOS信息

get-wmiobject -class win32_bios -namespace "root/cimv2" <enter>
運(yùn)行結(jié)果:

 


查看服務(wù)信息

get-wmiobject -class win32_service -namespace "root/cimv2" | format-list * <enter> 查看機(jī)器信息

get-wmiobject -class win32_computersystem | format-list * <enter> 

在網(wǎng)絡(luò)管理環(huán)境中的多數(shù)情況下,我們可能要查看不同的計(jì)算機(jī)信息,因此,就需要使用計(jì)算機(jī)這一參數(shù),例如:

查詢本地計(jì)算機(jī)的網(wǎng)絡(luò)信息

復(fù)制代碼 代碼如下:

$name="."

$items = get-wmiObject -class win32_NetworkAdapterConfiguration '
-namespace "root/CIMV2" -ComputerName $name | where{$_.IPEnabled -eq “True”} 
foreach($obj in $items) { 
Write-Host "DHCP Enabled:" $obj.DHCPEnabled 
Write-Host "IP Address:" $obj.IPAddress 
Write-Host "Subnet Mask:" $obj.IPSubnet 
Write-Host "Gateway:" $obj.DefaultIPGateway 
Write-Host "MAC Address:" $ojb.MACAddress 
}


如果查詢對(duì)象是其他機(jī)器,只需給變量"$name"賦與其他值即可。

例如:

復(fù)制代碼 代碼如下:

$name=read-host "Enter Computer Name"
write-host "Computer:"$name
$items = get-wmiObject -class win32_NetworkAdapterConfiguration '
-namespace "root/CIMV2" -ComputerName $name | where{$_.IPEnabled -eq “True”} 

foreach($obj in $items) { 
Write-Host "DHCP Enabled:" $obj.DHCPEnabled 
Write-Host "IP Address:" $obj.IPAddress 
Write-Host "Subnet Mask:" $obj.IPSubnet 
Write-Host "Gateway:" $obj.DefaultIPGateway 
Write-Host "MAC Address:" $ojb.MACAddress 
}


配合更多的查詢命令,便可以方便的寫出一個(gè)查詢計(jì)算機(jī)信息的腳本,在本教程的結(jié)束部分,我會(huì)盡可能多的提供各種常用腳本。本節(jié)內(nèi)容就先寫到這里。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 略阳县| 吴桥县| 琼中| 公安县| 彰武县| 柳江县| 景洪市| 济阳县| 龙州县| 揭阳市| 吉安县| 卢氏县| 清河县| 定远县| 云林县| 山西省| 土默特左旗| 丽江市| 金阳县| 阳信县| 桃园县| 瑞昌市| 岗巴县| 类乌齐县| 娱乐| 类乌齐县| 太原市| 白城市| 班玛县| 沁源县| 山西省| 会昌县| 榆社县| 垣曲县| 黄陵县| 那曲县| 遂平县| 鄂温| 永福县| 巢湖市| 措美县|