【发布时间】:2011-12-07 06:47:54
【问题描述】:
如果我在 PowerShell 脚本中执行以下操作:
$range = 1..100
ForEach ($_ in $range) {
if ($_ % 7 -ne 0 ) { continue; }
Write-Host "$($_) is a multiple of 7"
}
我得到了预期的输出:
7 is a multiple of 7
14 is a multiple of 7
21 is a multiple of 7
28 is a multiple of 7
35 is a multiple of 7
42 is a multiple of 7
49 is a multiple of 7
56 is a multiple of 7
63 is a multiple of 7
70 is a multiple of 7
77 is a multiple of 7
84 is a multiple of 7
91 is a multiple of 7
98 is a multiple of 7
但是,如果我使用管道和ForEach-Object,continue 似乎会跳出管道循环。
1..100 | ForEach-Object {
if ($_ % 7 -ne 0 ) { continue; }
Write-Host "$($_) is a multiple of 7"
}
我能否在仍然执行 ForEach-Object 的同时获得类似 continue 的行为,这样我就不必破坏我的管道?
【问题讨论】:
-
这是一个页面,其中包含许多与
foreach一起使用的命令:techotopia.com/index.php/… -
在这里找到了一个不错的解释和示例...powershell.com/cs/blogs/tips/archive/2015/04/27/…
-
链接已失效,其他链接并没有真正解释这一点。请问能再找一下吗?
标签: powershell foreach