Wyszukiwanie i zastępowanie w plikach kończy się niepowodzeniem
Próbuję znaleźć i zastąpić w pliku za pomocą następującego podejścia.
<code>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 </code>
Ale zawsze dostaję błąd.
Set-Content: Proces nie może uzyskać dostępu do pliku c: pliki programów (x86) MyProj web.config ', ponieważ jest używany przez inny proces.
Plik nie jest otwarty w żadnym miejscu. Myślę, że Get-content jeszcze nie wydał pliku.
Dlaczego tak się dzieje? Jak znaleźć i zastąpić w tym samym pliku bez problemu?