刚刚注意到这个使用ForEach-Object
(%
),continue
语句,这应该跳过当前的迭代,就像break
语句和break一样循环。
参见示例(应跳过5号):
1..10 | % {if ($_ -eq 5) {continue} else {$_}}
结果:
1 2 3 4
使用foreach
语句按预期工作:
foreach ($n in 1..10) {if ($n -eq 5) {continue} else {$n}}
结果:
1 2 3 4 6 7 8 9 10
为什么?这是一个错误还是有目的?