首页 > 解决方案 > 在powershell中创建一个环回,直到满足变量

问题描述

我假设我在这里犯了一个基本错误,但我正在尝试制作一个简单的代码,随机生成 2 个不大于 10 的数字并将它们加在一起。我希望最终产品的尺寸精确,因为这将插入我正在编码的自动密码生成器中。我的其余代码都很好,但无法让 $c 成为 8 以外的任何东西,它也不会像这样循环。如果我只是使用函数 rando 并单独运行,它每次都可以工作,但经常超出我的理想尺寸。

我需要做些什么来保持这个循环,直到我的变量最终达到 Goldilocks 数?

Function (rando)
{
$a = Get-Random -Maximum 10 -Minimum 1 
$b = Get-Random -Maximum 10 -Minimum 1 
$c = $a+$b
}

Function Test
{
if($c -ne 8)
{
rando
}
else
{
    Write-Host $c
}
}
Write-Host $c

标签: powershell-4.0

解决方案


哎呀,我修好了;我忘记了需要事先声明的嵌套变量。这是我的工作代码:

$a = Get-Random -Maximum 10 -Minimum 1 
$b = Get-Random -Maximum 10 -Minimum 1 
$c = $a+$b

Function blue
{
$a = Get-Random -Maximum 10 -Minimum 1 
$b = Get-Random -Maximum 10 -Minimum 1 
$c = $a+$b
Test
}

Function Test
{
if($c -ne 12)
{
blue
}
else
{
 Write-Host $c
}
}

Test

推荐阅读