变量的Powershell递增计数器

时间:2019-04-24 12:07:28

标签: powershell

是否可以在Powershell中增加变量对象的计数?

示例:

$var1 = "This"
$var2 = "Is"
$var3 = "A Test"

1..3 | ForEach-Object {$var$_ = DoSometing}

之所以这么问,是因为我正在使用system.Windows.Forms.CheckBox创建一个GUI。我在变量中有多个复选框对象,这些对象以我要操作的数字结尾。

$Checkbox1
$Checkbox2
$Checkbox3
$Checkbox4

我想知道是否有 clean 以及用Foreach-Object处理这些对象的好方法。而不是单独处理每个对象。

1 个答案:

答案 0 :(得分:0)

如果您确实需要创建变量,则可以使用New-Variable命令来完成。

Foreach ($z in (1..3)) {
    New-Variable -Name "Var$z" -Value $z
}

$var1,$var2,$var3
1
2
3

如果您需要检索或更新现有变量的值,则可以类似地使用Get-VariableSet-Variable

Foreach ($z in (1..3)) {
    Set-Variable -Name "Var$z" -Value "Updated $z"
    Get-Variable "Var$z" -ValueOnly
}

Updated 1
Updated 2
Updated 3