Xml 使用未知大小数组中的项作为选项在powershell中创建菜单

Xml 使用未知大小数组中的项作为选项在powershell中创建菜单,xml,arrays,powershell,menu,Xml,Arrays,Powershell,Menu,我希望在powershell中创建一个命令行菜单,其中的选项来自未知大小的数组 我以前一直在使用switch语句,但当时我知道会有多少个选项。现在,这些选项是从XML文件中解析出来的,并且一直在更改,所以旧方法不起作用 这是老办法: switch ($a) { 1 { Write-Host $USR_ID "on SERVER "$SERVER_NAME"`n" $query = $USR_ID } 2 { Write

我希望在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
      }
}
有人有什么想法吗


谢谢

创建一个数组,保存包含所需信息的对象,并将其索引到数组中,而不是使用
开关


我不知道XML是什么样子,也不知道各种变量是什么,所以很难给出更精确的答案。

非常简单,只是不同的SQL查询。脚本让用户根据XML中的内容选择要执行的查询。因此,不同的用户可以使用相同的脚本,而不必更改脚本中的变量和硬编码,他们只需向XML添加一个条目即可。