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ù)的默認值,所以在調(diào)用的時候可以為參數(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腳本清理指定天數(shù)前的臨時文件夾實現(xiàn)代碼
這篇文章主要介紹了PowerShell腳本清理指定天數(shù)前的臨時文件夾實現(xiàn)代碼,指定天數(shù)可以任意修改數(shù)字實現(xiàn),需要的朋友可以參考下2014-08-08
PowerShell入門教程之高效使用PowerShell交互式運行環(huán)境的幾個小技巧
這篇文章主要介紹了PowerShell入門教程之高效使用PowerShell交互式運行環(huán)境的幾個小技巧,本文也可以說是使用PowerShell的一些好習慣,需要的朋友可以參考下2014-10-10
Powershell 腳本數(shù)字簽名實現(xiàn)方法
這篇文章主要介紹了Powershell 腳本數(shù)字簽名實現(xiàn)方法,需要的朋友可以參考下2017-10-10
PowerShell因為在此系統(tǒng)中禁止執(zhí)行腳本的解決方法
今天看到國外的一篇文章可以在cmd中運行95版本的ps1格式的批處理,但經(jīng)過測試默認情況下powershell支不支持執(zhí)行腳本需要執(zhí)行如下操作2016-10-10
PowerShell使用match操作符來篩選數(shù)組
本文介紹PowerShell中使用match操作符,配合正則表達式從數(shù)組中篩選出想要的內(nèi)容,需要的朋友可以參考下2016-11-11
PowerShell函數(shù)參數(shù)使用智能提示功能例子
這篇文章主要介紹了PowerShell函數(shù)參數(shù)使用智能提示功能例子,這個功能一般需要在PowerShell集成開發(fā)環(huán)境ISE中才會顯示智能提示,需要的朋友可以參考下2014-07-07

