我想在powershell中创建一个命令行菜单,其中的选项来自未知大小的数组。
我以前一直在使用switch语句,但当时我知道会有多少选项。现在,这些选项正在从XML文件中解析,并且一直在变化,因此旧方法将无效。
这是旧的方式:
switch ($a)
{
1 {
Write-Host $USR_ID "on SERVER "$SERVER_NAME"`n"
$query = $USR_ID
}
2 {
Write-Host $PRFL_NM "on SERVER "$SERVER_NAME"`n"
$query = $PRFL_NM
}
3 {
Write-Host $APP_NM "on SERVER "$SERVER_NAME"`n"
$query = $APP_NM
}
4{
Write-Host $COMBO "on SERVER " $SERVER_NAME"`n"
$query = $COMBO
confirm
}
default {
"** Invalid Input **";
exit
}
}
有人有任何想法吗?
谢谢!
答案 0 :(得分:2)
创建一个数组,其中包含您需要的相应信息的对象,并将其索引到数组中,而不是使用switch
。
我不知道您的XML是什么样的以及您的各种变量是什么,因此很难给出更准确的答案。