Пошук та заміна тексту

PowerShell:
Пошук та заміна тексту

How to: / Як це зробити:

Давайте подивимося на базовий приклад: ви хочете знайти слово “hello” у файлі й замінити його на “hi”.

# Замінити 'hello' на 'hi' в конкретному файлі:
(Get-Content -path "C:\your\file.txt") -replace 'hello', 'hi' | Set-Content -path "C:\your\file.txt"

Виведемо результат на екран та замінимо у виводі:

# Виводимо вміст файлу, заміняємо 'hello' на 'hi' і друкуємо на екрані
Get-Content -path "C:\your\file.txt" | ForEach-Object { $_ -replace 'hello', 'hi' }

Deep Dive / Поглиблений розгляд:

Перші скрипти для пошуку та заміни з’явилися ще в ранніх текстових редакторах. Щодо PowerShell, -replace працює з регулярними виразами (regex), таким чином даючи екстремальну гнучкість і силу. Існують також і альтернативні методи для заміни тексту, наприклад sed у Linux або текстові редактори як Notepad++, які мають GUI для цього процесу. Щодо впровадження, команда -replace в PowerShell може замінювати текст у потоках даних, що робить її ідеальною для пайплайнів і автоматизації.

See Also / Дивіться також: