Windows Powershell對(duì)象=屬性+方法
在現(xiàn)實(shí)世界中,你可能已經(jīng)了解對(duì)象就是那些能夠摸到的東西。Powershell中的對(duì)象和現(xiàn)實(shí)生活很相似。例如要在現(xiàn)實(shí)生活中描述一把小刀。我們可能會(huì)分兩方面描述它
屬性:一把小刀擁有一些特殊的屬性,比如它的顏色、制造商、大小、刀片數(shù)。這個(gè)對(duì)象是紅色的,重55克,有3個(gè)刀片,ABC公司生產(chǎn)的。因此屬性描述了一個(gè)對(duì)象是什么。
方法:可以使用這個(gè)對(duì)象做什么,比如切東西、當(dāng)螺絲釘用、開(kāi)啤酒蓋。一個(gè)對(duì)象能干什么就屬于這個(gè)對(duì)象的方法。
創(chuàng)建對(duì)象
通過(guò)New-Object可以創(chuàng)建一個(gè)對(duì)象,甚至可以創(chuàng)建一個(gè)虛擬的小刀,但是第一步需要?jiǎng)?chuàng)建一個(gè)空對(duì)象??諏?duì)象什么都沒(méi)有,如果調(diào)用它,不會(huì)返回任何東西。
PS C:Powershell> $pocketknife=New-Object object
PS C:Powershell> $pocketknife
System.Object
增加屬性
接下來(lái)描述這個(gè)對(duì)象是什么
PS C:Powershell> Add-Member -InputObject $pocketknife -Name Color -Value "Red"
-MemberType NoteProperty
PS C:Powershell> $pocketknife
Color
-----
Red
PS C:Powershell> Add-Member -InputObject $pocketknife -Name Weight -Value "55"
-MemberType NoteProperty
PS C:Powershell> $pocketknife | Add-Member NoteProperty Blades 3
PS C:Powershell> $pocketknife | Add-Member NoteProperty Manufacturer ABC
PS C:Powershell> $pocketknife
Color Weight Blades Manufacturer
----- ------ ------ ------------
Red 55 3 ABC
增加方法
給一個(gè)對(duì)象增加了屬性后,這個(gè)對(duì)象就有形狀了,但是它仍然不能做任何事,要想它做事,必須給它增加方法。同樣使用Add-Member,不過(guò)-memberType 選項(xiàng)使用ScriptMethod。
# 增加一個(gè)新方法:
Add-Member -memberType ScriptMethod -In $pocketknife `
-name cut -Value { "I'm whittling now" }
# 指定參數(shù)類(lèi)型增加一個(gè)新方法:
Add-Member -in $pocketknife ScriptMethod screw { "Phew...it's in!" }
#直接通過(guò)管道增加一個(gè)新方法:
$pocketknife | Add-Member ScriptMethod corkscrew { "Pop! Cheers!" }
方法添加成功后就可以調(diào)用了
PS C:Powershell> $pocketknife.cut()
I'm whittling now
PS C:Powershell> $pocketknife.screw()
Phew...it's in!
PS C:Powershell> $pocketknife.corkscrew()
Pop! Cheers!
在調(diào)用方法時(shí)如果沒(méi)有使用圓括號(hào),方法不會(huì)執(zhí)行,但是可以返回方法的基本信息。
PS C:Powershell> $pocketknife.corkscrew
Script : "Pop! Cheers!"
OverloadDefinitions : {System.Object corkscrew();}
MemberType : ScriptMethod
TypeNameOfValue : System.Object
Value : System.Object corkscrew();
Name : corkscrew
IsInstance : True
到目前為止一個(gè)虛擬的小刀對(duì)象就創(chuàng)建完成了,一個(gè)對(duì)象包含數(shù)據(jù)(屬性)和動(dòng)作(方法)。
相關(guān)文章
自動(dòng)設(shè)置安卓手機(jī)wifi代理的PowerShell腳本
這篇文章主要介紹了自動(dòng)設(shè)置安卓手機(jī)wifi代理的PowerShell腳本,幫助大家進(jìn)行抓包測(cè)試,感興趣的朋友可以了解下2020-10-10PowerShell小技巧之調(diào)用CloudFlare的SDK查詢(xún)網(wǎng)站統(tǒng)計(jì)信息
本文主要是記述使用powershell調(diào)用CloudFlare的SDK查詢(xún)網(wǎng)站統(tǒng)計(jì)信息,非常實(shí)用,希望對(duì)大家有所幫助2014-09-09PowerShell腳本實(shí)現(xiàn)網(wǎng)卡DHCP自動(dòng)獲取IP地址、設(shè)置靜態(tài)IP地址的方法
這篇文章主要介紹了PowerShell腳本實(shí)現(xiàn)網(wǎng)卡DHCP自動(dòng)獲取IP地址、設(shè)置靜態(tài)IP地址的方法,本文同時(shí)講解了用PowerShell設(shè)置網(wǎng)卡DHCP、靜態(tài)IP的方法,需要的朋友可以參考下2014-08-08PowerShell小技巧之讀取Windows產(chǎn)品密鑰
這篇文章主要給大家分享一段使用PowerShell讀取Windows產(chǎn)品密鑰的小技巧,非常的簡(jiǎn)單實(shí)用,有需要的朋友可以參考下。2014-10-10PowerShell DSC組件 xExchange 發(fā)布
這篇文章主要介紹了PowerShell DSC組件 xExchange 發(fā)布,xExchange實(shí)現(xiàn)可以在PowerShell中使用DSC來(lái)部署和配置Exchange,需要的朋友可以參考下2015-04-04