本文介紹在自定義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ù)了。
復(fù)制代碼 代碼如下:
function Get-Parameter {
param
(
$Name,
$LastName='Default',
$Age,
$Id
)
$PSBoundParameters
}
這個函數(shù)定義了四個參數(shù),用戶可以隨意選擇參數(shù)進行輸入,那么,我們就使用$PSBoundParameters這個變量來獲取輸入?yún)?shù)列表。
執(zhí)行的情況如下:
復(fù)制代碼 代碼如下:
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),本文就介紹這么多,希望對您有所幫助,謝謝!
您可能感興趣的文章:- 區(qū)分shell中的 反引號、$()和${}
- 詳解Shell 腳本中 “$” 符號的多種用法
- Shell $0, $#, $*, $@, $?, $$和命令行參數(shù)的使用
- 淺談linux中shell變量$#,$@,$0,$1,$2的含義解釋
- 用來檢測輸入的選項$1是否在PATH中的shell腳本
- Shell中的${}、##和%%使用范例
- PowerShell中的特殊變量$null介紹和創(chuàng)建多行注釋小技巧
- PowerShell中的$Input變量使用實例
- PowerShell默認參數(shù)$PSDefaultParameterValues結(jié)合Out-File輸出到日志文件
- shell腳本中$符號的命令使用匯總