Powershell 如果不是空的,跳转到PS中的某个地方
你好,早上好 我想看看我是否能够跳转到PS中的某个地方,而不必用脚本块包装它;见鬼,我甚至可以接受这一点,但我只是不确定如何去做 我试图做的是:向函数添加一个参数集,如果参数Powershell 如果不是空的,跳转到PS中的某个地方,powershell,powershell-5.0,Powershell,Powershell 5.0,你好,早上好 我想看看我是否能够跳转到PS中的某个地方,而不必用脚本块包装它;见鬼,我甚至可以接受这一点,但我只是不确定如何去做 我试图做的是:向函数添加一个参数集,如果参数-GrpSelec(我知道imma会更改它),那么只需跳过脚本的其余部分,转到我的$swap变量来执行切换 $Group1 = @("1st Group", "2nd Group") $Group2 = @("3rd Group", "4th Group&
-GrpSelec
(我知道imma会更改它),那么只需跳过脚本的其余部分,转到我的$swap
变量来执行切换
$Group1 = @("1st Group", "2nd Group")
$Group2 = @("3rd Group", "4th Group")
Function Test-Group{
param(
[ValidateSet("Group1","group2")]
[array]$GrpSelec)
if($GrpSelec){ &$swap }
$AllGroups = @("Group1", "Group2")
for($i=0; $i -lt $AllGroups.Count; $i++){
Write-Host "$($i): $($AllGroups[$i])"}
$GrpSelec = Read-Host -Prompt "Select Group(s)"
$GrpSelec = $GrpSelec -split " "
$swap = Switch -Exact ($GrpSelec){
{1 -or "Group1"} {"$Group1"}
{2 -or "Group2"} {"$Group2"}
}
Foreach($Group in $swap){
"$Group"}
}
这样的事情可能吗
我在谷歌上搜索了两个类似的问题,它们指向调用操作符&
(如上所示),和/或一个foreach
,这绝对不是同一个lol
别紧张,我只是在试验(:一个简单的
if
语句怎么样
function Test-Group {
param(
[string[]]$GrpSelec
)
if(!$PSBoundParameters.ContainsKey('GrpSelect')){
# no argument was passed to -GrpSelec,
# populate $GrpSelec in here before proceeding with the rest of the script
}
# Now that $GrpSelec has been populated, let's do the work
$swap = Switch -Exact ($GrpSelec){
{1 -or "Group1"} {"$Group1"}
{2 -or "Group2"} {"$Group2"}
}
# rest of function
}
一个简单的
if
语句怎么样
function Test-Group {
param(
[string[]]$GrpSelec
)
if(!$PSBoundParameters.ContainsKey('GrpSelect')){
# no argument was passed to -GrpSelec,
# populate $GrpSelec in here before proceeding with the rest of the script
}
# Now that $GrpSelec has been populated, let's do the work
$swap = Switch -Exact ($GrpSelec){
{1 -or "Group1"} {"$Group1"}
{2 -or "Group2"} {"$Group2"}
}
# rest of function
}
我想我的问题是试图从
$AllGroups
数组中进行选择。我试图采纳您的建议,但即使我为参数提供了一个值,它仍然会提示我选择2个groups.GrpSelec和GrpSelect@notjustme谢谢你,我没有注意到!现在我只是有一个问题,它的公关我想我的问题是试图从$AllGroups
数组中进行选择。我试图采纳你的建议,但即使我为参数提供了一个值,它仍然会提示我选择两个组。GrpSelec和GrpSelect@notjustme谢谢你,我没有注意到!现在我有一个问题,它打印出了两个数组,即使我只打电话给一个也会在周一发布一个单独的问题