PS > $Index = 1
PS > $Variable1 = "Var1"
PS > $Variable = "Variable$Index"
PS > $Variable
Variable1
有没有办法让 $Variable 成为另一个变量 ($Variable1) 的值,通过使用字符串和另一个变量 ($Index) 来定位它,类似于上面的方法?
答案1
您可能需要进一步解释您的用例,因为动态创建和使用变量可能不是最佳解决方案。
也就是说,您可以(get-variable "Variable$($Index)").Value
开始尝试一下,看看它可以带您走多远。
答案2
根据你真正想要完成的任务,你可能会发现了解数组的工作原理很有用。考虑以下示例:
$array = @("Var0", "Var1", "Var2")
$index = 1
$array[$Index]
第一步创建一个包含三个元素的数组,并将其存储在一个变量中。请注意,在 1 的条目之前包含 0 的条目。
第二步将值 1 存储在变量中。
第三步使用值为 1 的变量作为选择器来选择数组中的正确元素。请注意,如果 Index 为零,它将选择数组的第一个元素。
这是 powershell 中非常常见的技术,但它可能与您的用例相关或不相关。