本文介紹在自定義PowerShell函數(shù)時,有一個$PSBoundParameters的變量可以獲取到輸入?yún)?shù)列表。獲取輸入?yún)⑷肓斜韺ξ覀冞M行功能調(diào)試有很大的幫助。
當我們在執(zhí)行一個函數(shù)時,可以使用輸入?yún)?shù)的值,但我在PowerShell中,參數(shù)有的是必選,有的是可選,那么我們怎么知道用戶真實的輸入了哪些參數(shù)呢?
在PowerShell函數(shù)中,有一個全局變量$PSBoundParameters,它是一個Hash表,里面保存了所有的輸入?yún)?shù)和輸入?yún)?shù)的值。通過輸出這個變量,我們就可以看到所有的輸入?yún)?shù)了。
代碼如下:
function Get-Parameter {
param
(
$Name,
$LastName='Default',
$Age,
$Id
)
$PSBoundParameters
}
這個函數(shù)定義了四個參數(shù),用戶可以隨意選擇參數(shù)進行輸入,那么,我們就使用$PSBoundParameters這個變量來獲取輸入?yún)?shù)列表。
執(zhí)行的情況如下:
代碼如下:
PS> Get-Parameter
PS> Get-Parameter -Name test -Id 12
Key Value
--- -----
Name test
Id 12
大家可以看到,同樣是調(diào)用這個函數(shù),沒有輸入?yún)?shù)時,輸出結(jié)果為空。輸入了參數(shù)時,參數(shù)名和參數(shù)值被原樣輸出。
關(guān)于PowerShell函數(shù)獲取輸入?yún)?shù)列表($PSBoundParameters),本文就介紹這么多,希望對您有所幫助,謝謝!
新聞熱點
疑難解答
圖片精選