本文介紹在自定義PowerShell函數(shù)時(shí),有一個(gè)$PSBoundParameters的變量可以獲取到輸入?yún)?shù)列表。獲取輸入?yún)⑷肓斜韺?duì)我們進(jìn)行功能調(diào)試有很大的幫助。
當(dāng)我們?cè)趫?zhí)行一個(gè)函數(shù)時(shí),可以使用輸入?yún)?shù)的值,但我在PowerShell中,參數(shù)有的是必選,有的是可選,那么我們?cè)趺粗烙脩?hù)真實(shí)的輸入了哪些參數(shù)呢?
在PowerShell函數(shù)中,有一個(gè)全局變量$PSBoundParameters,它是一個(gè)Hash表,里面保存了所有的輸入?yún)?shù)和輸入?yún)?shù)的值。通過(guò)輸出這個(gè)變量,我們就可以看到所有的輸入?yún)?shù)了。
復(fù)制代碼 代碼如下:
function Get-Parameter {
param
(
$Name,
$LastName='Default',
$Age,
$Id
)
$PSBoundParameters
}
這個(gè)函數(shù)定義了四個(gè)參數(shù),用戶(hù)可以隨意選擇參數(shù)進(jìn)行輸入,那么,我們就使用$PSBoundParameters這個(gè)變量來(lái)獲取輸入?yún)?shù)列表。
執(zhí)行的情況如下:
復(fù)制代碼 代碼如下:
PS> Get-Parameter
PS> Get-Parameter -Name test -Id 12
Key Value
--- -----
Name test
Id 12
大家可以看到,同樣是調(diào)用這個(gè)函數(shù),沒(méi)有輸入?yún)?shù)時(shí),輸出結(jié)果為空。輸入了參數(shù)時(shí),參數(shù)名和參數(shù)值被原樣輸出。
關(guān)于PowerShell函數(shù)獲取輸入?yún)?shù)列表($PSBoundParameters),本文就介紹這么多,希望對(duì)您有所幫助,謝謝!
您可能感興趣的文章:- 區(qū)分shell中的 反引號(hào)、$()和${}
- 詳解Shell 腳本中 “$” 符號(hào)的多種用法
- Shell $0, $#, $*, $@, $?, $$和命令行參數(shù)的使用
- 淺談linux中shell變量$#,$@,$0,$1,$2的含義解釋
- 用來(lái)檢測(cè)輸入的選項(xiàng)$1是否在PATH中的shell腳本
- Shell中的${}、##和%%使用范例
- PowerShell中的特殊變量$null介紹和創(chuàng)建多行注釋小技巧
- PowerShell中的$Input變量使用實(shí)例
- PowerShell默認(rèn)參數(shù)$PSDefaultParameterValues結(jié)合Out-File輸出到日志文件
- shell腳本中$符號(hào)的命令使用匯總