gpt4 book ai didi

powershell - 仅在嵌套循环中跳出内循环

转载 作者:行者123 更新时间:2023-12-02 22:13:27 24 4
gpt4 key购买 nike

我正在尝试实现中断,因此当我得到 xxxxx 次结果时,我不必继续循环。

$baseFileCsvContents | ForEach-Object {
# Do stuff
$fileToBeMergedCsvContents | ForEach-Object {
If ($_.SamAccountName -eq $baseSameAccountName) {
# Do something
break
}
# Stop doing stuff in this For Loop
}
# Continue doing stuff in this For Loop
}

问题是,这个中断同时退出了 ForEach-Object循环,我只希望它退出内部循环。我试过阅读和设置标志,如 :outer ,但是我得到的只是语法错误。

有人知道怎么做吗?

最佳答案

您将无法对 ForEach-Object 使用命名循环,但可以使用 ForEach 关键字来代替,如下所示:

$OuterLoop = 1..10
$InnerLoop = 25..50

$OuterLoop | ForEach-Object {
Write-Verbose "[OuterLoop] $($_)" -Verbose
:inner
ForEach ($Item in $InnerLoop) {
Write-Verbose "[InnerLoop] $($Item)" -Verbose
If ($Item -eq 30) {
Write-Warning 'BREAKING INNER LOOP!'
BREAK inner
}
}
}

现在,每当每个内循环达到 30 时,它将跳出到外循环并继续。

关于powershell - 仅在嵌套循环中跳出内循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36025696/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com