Возможно ли в PowerShell (или даже лучше в PowerShell Core) привязать функцию к параметру ValidateSet, указанному в сценарии?
Я хочу связать параметры параметров a
, b
и c
с функциями a_function
b_function
и c_function
с переменной $firstcmd
или $secondcmd
. Поэтому, если скрипт вызывается
PS C:\ script.ps1 a
функция a
запущена.
если скрипт вызывается
PS C:\ script.ps1 a b
функции a
и b
запущены.
Определение параметра при запуске скрипта выглядит так:
param([Parameter(Mandatory=$false)][String][ValidateSet('a',
'b',
'c')$firstcmd,
[Parameter(Mandatory=$false)][String][ValidateSet('a',
'b',
'c')$secondcmd,
)
function a_function {
Write-Host "Hello a"
}
function b_function {
Write-Host "Hello b"
}
function c_function {
Write-Host "Hello c"
}
# here the "command option to function mapping" magic should happen