打破
break 运算符将立即退出程序循环。它可用于 For,ForEach,While 和 Do 循环或 Switch 声明。
$i = 0
while ($i -lt 15) {
$i++
if ($i -eq 7) {break}
Write-Host $i
}
以上将计为 15,但一旦达到 7 就停止。
注意 :使用管道循环时,break 将表现为 continue。要在管道循环中模拟 break,你需要合并一些额外的逻辑,cmdlet 等。如果你需要使用 break,则更容易坚持使用非管道循环。
打破标签
Break 也可以调用放在循环实例化前面的标签:
$i = 0
:mainLoop While ($i -lt 15) {
Write-Host $i -ForegroundColor 'Cyan'
$j = 0
While ($j -lt 15) {
Write-Host $j -ForegroundColor 'Magenta'
$k = $i*$j
Write-Host $k -ForegroundColor 'Green'
if ($k -gt 100) {
break mainLoop
}
$j++
}
$i++
}
注意: 此代码将 $i 增加到 8,$j 增加到 13,这将导致 $k 等于 104。由于 $k 超过 100,因此代码将突破两个循环。