PowerShell定義函數(shù)參數(shù)的2種方法和傳參方法實例
本文介紹PowerShell自定義函數(shù)定義參數(shù)的兩種方法,一種是將參數(shù)列表放到函數(shù)名之后,就跟其它語言定義函數(shù)參數(shù)一樣;另一種則是PowerShell獨有的方式,那就是使用param關鍵詞。
先來看看第一種定義參數(shù)的方式——將參數(shù)列表放到函數(shù)名之后
舉個例子先看看:
function Test-Function($參數(shù)名1='默認參數(shù)值1', $參數(shù)名2='默認參數(shù)值2')
{
Write-Host "參數(shù)1=$參數(shù)名1,參數(shù)2=$參數(shù)名2";
}
這種方式比較簡單直接,而且有點像C#和PHP,可以直接賦默認值。
微軟告訴我們,這種將參數(shù)定義的列表直接放到函數(shù)名后,不是最佳的做法。PowerShell在內(nèi)部處理的時候,還是會進一步的將上面定義的參數(shù)格式轉換成如下的官方語法:
function Test-Function
{
param($參數(shù)名1='默認參數(shù)值1', $參數(shù)名2='默認參數(shù)值2')
Write-Host "參數(shù)1=$參數(shù)名1,參數(shù)2=$參數(shù)名2";
}
大家看出區(qū)別來了吧,直接將函數(shù)名之后的參數(shù)列表,連同括號一起拿掉。然后在函數(shù)體(大括號之內(nèi))來一段param關鍵詞開始的參數(shù)定義代碼,把參數(shù)列表就放到這兒了。其它的不變。
不管上面哪種定義參數(shù)列表的方式,運行的結果都是一樣的。
順便說一句,因為上面定義了參數(shù)的默認值,所以在調用的時候可以為參數(shù)賦值,可以不賦值。但賦值時一定要指明參數(shù)的名稱。如:
參數(shù)1=默認參數(shù)值1,參數(shù)2=默認參數(shù)值2
PS> Test-Function -參數(shù)1 "p1"
參數(shù)1=p1,參數(shù)2=默認參數(shù)值2
關于PowerShell函數(shù)參數(shù)定義,本文就介紹這么多,希望對您有所幫助,謝謝!
相關文章
PowerShell統(tǒng)計文件夾下文件個數(shù)的方法
這篇文章主要介紹了PowerShell統(tǒng)計文件夾下文件個數(shù)的方法,本文介紹了2種訪求實現(xiàn)這個需求,需要的朋友可以參考下2014-08-08PowerShell小技巧實現(xiàn)IE Web自動化
使用IE的COM對象來完成簡單的Web自動化測試,是最小巧和廉價的Web自動化測試了,因為它不用引入第三方插件或者工具。2014-09-09PowerShell腳本實現(xiàn)添加、修改任務計劃的例子
這篇文章主要介紹了PowerShell腳本實現(xiàn)添加、修改任務計劃的例子,PowerShell操作、設置任務計劃實例,需要的朋友可以參考下2014-08-08PowerShell腳本實現(xiàn)網(wǎng)卡DHCP自動獲取IP地址、設置靜態(tài)IP地址的方法
這篇文章主要介紹了PowerShell腳本實現(xiàn)網(wǎng)卡DHCP自動獲取IP地址、設置靜態(tài)IP地址的方法,本文同時講解了用PowerShell設置網(wǎng)卡DHCP、靜態(tài)IP的方法,需要的朋友可以參考下2014-08-08