1

我需要在 ForEach-Object 部分添加错误检查。

目前,此代码用于替换文件中的值。但是,如果它找不到该值,它似乎不会产生任何错误。我已经尝试过,但它不起作用。我已经搜索了几个小时并尝试了各种东西......有什么帮助吗?

我可以通过两种不同的方式执行命令,不确定添加错误检查更好或更容易...

(Get-Content $file) | ForEach-Object { $_ -replace $replace, $with } | Set-Content $file

-或者-

ForEach-Object { (Get-Content $file) -replace $replace, $with } | Set-Content $file

谢谢你。

4

1 回答 1

0

找不到要替换的东西不是错误,它只是将原始内容返回。所以在 if 语句中检查它,比如:

foreach { $rep=$_ -replace $replace,$width; if ($_ -eq $rep) {...} } 
于 2013-09-25T19:45:29.670 回答