gpt4 book ai didi

powershell - 在文件中查找和替换失败

转载 作者:行者123 更新时间:2023-12-03 04:19:07 24 4
gpt4 key购买 nike

我正在尝试使用以下方法在文件中查找和替换。

Function Find-Replace ($FileFullpath, $FindString, $ReplacementString) {

Get-Content $FileFullpath |
Foreach-Object {$_ -replace $FindString, $ReplacementString } |
Set-Content $FileFullpath

}

Find-Replace "c:\program files (x86)\MyProj\web.config" $OldServiceName $NewServiceName

但我总是遇到错误。

Set-Content : The process cannot access the file 'c:\program files (x86)\MyProj\web.config' because it is being used by another process.

该文件未在任何地方打开。我认为 Get-content 尚未发布该文件。

为什么会发生这种情况?如何在同一个文件中毫无问题地进行查找和替换?

最佳答案

当文件打开时,您无法读取和写入同一个文件。 Get-Content 打开文件进行读取,同时 Set-Content 尝试写入该文件。将 Get-Content 调用放在括号中;它将打开文件,读取其内容并关闭它。

(Get-Content $FileFullpath) | ...

关于powershell - 在文件中查找和替换失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10480673/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com