Jak wyszukać i zamienić ciąg w pliku za pomocą cmd lub PowerShell?


13

Mam plik .txt, w którym chcesz zastąpić ciąg aaaz bbb.

Wypróbowałem następujący kod programu PowerShell:

Get-Content c:\1.txt | ForEach-Object { $_ -replace "aaa", "bbb" } | Set-Content c:\1.txt

Otrzymuję błąd, który 1.txtjest używany przez inny proces. Co ja robię źle?

Odpowiedzi:


19
(get-content c:\1.txt) | foreach-object {$_ -replace "prod", "qa1"} | set-content c:\1.txt

Nawiasy wokół Get-Contentzapewniają, że operacja Get zostanie zakończona przed rozpoczęciem operacji Set. Bez tego obie funkcje próbowałyby uzyskać dostęp do pliku w tym samym czasie.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.