当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell While 循环|了解 PowerShell While 循环如何工作?

作者:精品下载站 日期:2024-12-14 04:53:20 浏览:16 分类:玩电脑

PowerShell While 循环|了解 PowerShell While 循环如何工作?


[玩转系统] PowerShell While 循环|了解 PowerShell While 循环如何工作?

PowerShell While 循环简介

PowerShell 中的 while 循环是一个迭代循环,一直运行到条件满足为止。您可以在 while 块内编写多行代码并运行多次,直到满足条件。它类似于FOR循环,但结构不同。

图表:

[玩转系统] PowerShell While 循环|了解 PowerShell While 循环如何工作?

语法:

While (condition) {
Operation commands
}

参数:

  • 条件:此处指定条件参数。该条件可以是一个或多个,输出将为布尔格式($True 或 $False)。当循环基于此条件运行时,一旦条件为假,循环将自动终止。
  • 操作命令:这些命令可以是简单或复杂的命令。只要条件满足,它就会运行。

上面的语法相当于,

while (true) {
if (!condition)
break;
statements;
}

PowerShell While 循环如何工作?

在PowerShell中的While块中,首先初始化变量和其他参数,然后进行条件检查。条件可以是一个或多个,根据条件,如果成立,则执行Body函数;再次,它在执行主体部分后重复检查;如果再次满足条件,则再次执行主体部分。重复相同的过程,直到条件变为假。一旦条件为假,循环就会终止。

如果条件最初为 false,则脚本将不会进入主体函数内部。但是,请记住指定一个最终可以终止循环的条件或命令;否则,循环将永远执行。当满足特定条件时,您还可以使用 BREAK 命令终止块的执行,或使用 CONTINUE 语句跳过当前迭代。

PowerShell While 循环示例

让我们看一下 PowerShell 中 while 循环的一些示例,如下所示:

示例 #1 - 使用简单的 While 循环

下面的脚本将初始化变量 $i=1 并执行 while 循环。这里条件$i值1小于等于10,因此进入body语句并执行Write-Output命令,然后将$i的值增加到2,然后再次检查条件并进入循环。相同的过程一直持续到 $i 值达到 11,条件变为 false,并且循环终止。如果不输入 $i++,循环将永远执行,因为脚本找不到任何终止条件。

代码:

$i=1
while($i -le 10){
Write-Output "Value of i : $i"
$i++
}

输出:

[玩转系统] PowerShell While 循环|了解 PowerShell While 循环如何工作?

示例 #2 - 使用 -AND 运算符的多个条件

代码:

$i=5
$j=10
while(($i -le 10) -and ($j -ge 7) ){
Write-Output "Value of i : $i"
Write-Output "`nValue of j : $j"
$i++
$j--
}

输出:

[玩转系统] PowerShell While 循环|了解 PowerShell While 循环如何工作?

在上面的示例中,如果任何条件为假(当 $i 值变得大于 10 并且 $j 值变得小于 7 时),则循环终止。当$j的值第一次达到6时,无法满足while循环条件,终止循环。

示例 #3 - 使用 -OR 运算符的多个条件

代码:

$i=5
$j=10
while(($i -le 10) -or ($j -ge 7) ){
Write-Output "Value of i : $i"
Write-Output "`nValue of j : $j"
$i++
$j--
}

输出:

[玩转系统] PowerShell While 循环|了解 PowerShell While 循环如何工作?

在 -OR 条件中,如果两个语句中的任何一个满足,则执行循环。

示例 #4 - While 循环内的条件

与普通函数一样,您可以在 while 循环内指定条件。

代码:

$i=5
while($i -ge 10){
if($i -eq 8){
Write-Output "Variable value reached to 8"
}
$i++
}

输出:

[玩转系统] PowerShell While 循环|了解 PowerShell While 循环如何工作?

示例 #5 - 带 Break 语句的 While 循环

如上例所示,循环会一直执行到满足 while 条件为止,但如果我们希望在满足 if 条件时终止循环,则需要使用 Break 命令。一旦执行了break命令,它就会终止所有循环(父循环和子循环)。

代码:

$i=5
while($i -le 10){
if($i -eq 8){
Write-Output "Break command is going to run now"
Break
}
Write-Output "After break this will not executed"
$i++
}

输出:

[玩转系统] PowerShell While 循环|了解 PowerShell While 循环如何工作?

在上面的示例中,当 IF 语句中的变量值达到 8 时,IF 块就会执行。执行break后,它终止整个循环。您可以看到上面两个示例的差异。

示例#6 - 带Continue 语句的While 循环

当执行CONTINUE语句时,它会跳过当前循环并返回到主循环。在下面的示例中,当值达到 8 时,它会跳过程序的其余部分并返回到主 WHILE 循环。

代码:

$i=5
while($i -le 10){
$i++
if($i -eq 8){Continue}
Write-Output $i
}

输出:

[玩转系统] PowerShell While 循环|了解 PowerShell While 循环如何工作?

示例 #7 - 嵌套 While 循环

您还可以使用嵌套的 WHILE 循环。请参阅下面的示例。

代码:

$i=0
$j=0
while($i -lt 3){
While($j -lt 3){
Write-Output "`ni = $i"
Write-Output "j = $j"
$j++
}
$i++
$j=0
}

输出:

[玩转系统] PowerShell While 循环|了解 PowerShell While 循环如何工作?

在此示例中,脚本首先针对 $i 值为 0 执行主 while 循环;然后,它运行整个内部 while 循环。同样,对于 $i=1,脚本执行内部 while 循环,并继续执行,直到 $i 的值满足条件。

示例 #8 - 使用 $TRUE 的 While 循环

您还可以按如下方式构造 while 循环。

代码:

$i = 5
while($true){
Write-Output $i
if($i -eq 8){Break}
$i++
}

输出:

[玩转系统] PowerShell While 循环|了解 PowerShell While 循环如何工作?

在上面的示例中,while 循环会永远执行,因为条件中指定了 $true。要终止循环,请在满足条件时使用 Break 命令。

结论

尽管 while 循环与 FOR、FOREACH 和 Do-While 等其他循环共享功能,但 Do-While 循环首先执行主体语句,然后检查条件。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯