Powershell - 查找和替换错误检查(ForEach-Object)

时间:2013-09-25 18:39:46

标签: powershell error-handling pipeline error-checking

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

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

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

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

-OR -

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

谢谢。

1 个答案:

答案 0 :(得分:0)

找不到任何替换不是错误,它只是返回原来的。所以在if语句中检查它,如:

foreach { $rep=$_ -replace $replace,$width; if ($_ -eq $rep) {...} }