Powershell - zamiana tekstu w wielu plikach

0

Witam,
niestety nie potrafię sobie sam poradzić z problemem w Powershell'u
Chodzi mi o to, że mam do zmiany z ~200 plików, w których 1 linijka tekstu musi zostać zmieniona na inną
Chodzi o to by zmienić wszystkie pliki o rozszerzeniu *.project
i zmienić im wartość z np. "aaa" na "bbb"

Próbowałem coś z Get-Content oraz -replace
ale to mi działało tylko jak odnosiłem się konkretnie do pełnej ścieżki i nazwy pliku, jak chciałem skorzystać z *.project to dodawało treści do siebie :(

Bardzo proszę o pomoc
Pozdrawiam

1

Czy to musi być Powershell?
Znaczy się, czy potrzebujesz zrobić to raz czy potrzebujesz zrobić skrypt, do reguarnego używania?

Jeśli raz, może wystarczy: Notepad++

  • Szukaj / Szukaj w plikach... [zakładka: Zamień w plikach].

A do zamiany nazw plików: Total Commander

  • Plik / Narzędzie wielokrotnej zamiany... (CTRL + T).
1

Udało mi się już ogarnąć temat:

$search = '*.testinit'
$replace_with = 'TestInitProgram=.\TestInitializationPrograms\xyz_CheckListTestInitializationProgram.testinit'
$base_dir = 'E:\Projects'
$text_file_ext = 'project'

Get-ChildItem $base_dir -Recurse -Include "xyz_*.$text_file_ext" |
ForEach-Object { (Get-Content $.FullName) |
ForEach-Object {$
-replace $search, $replace_with} |
Set-Content $_.FullName }

Taka forma się sprawdziła.

1 użytkowników online, w tym zalogowanych: 0, gości: 1