我正在尝试完成搜索并在多个文件中替换。请参阅下面的示例代码。但是,当我使用字符[],::,/它在整个地方多次替换。有办法解决吗?
PS C:"Some_Path"> $newFiles = Get-ChildItem . *.par -rec
foreach ($file in $newFiles)
{(Get-Content $file.PSPath) | Foreach-Object { $_ -replace "[text]", " /Text/Text_Data1::[404PC001]" } | Set-Content $file.PSPath }
谢谢
.par是文本文件
PowerShell中的-replace
操作员使用正则表达式。您需要引用这些表达式中特殊的字符。为了在您的示例中执行此操作,请在" ['and']"字符之前添加'',如:
$_ -replace "[text]", " /Text/Text_Data1::[404PC001]"