У меня была похожая потребность (и отсутствие опыта в PowerShell), но я собрал полный ответ из других ответов на этой странице, а также немного больше исследований.
Я также хотел избежать обработки регулярных выражений, поскольку она мне тоже не нужна - просто замена строки - но для большого файла, поэтому я не хотел, чтобы он загружался в память.
Вот команда, которую я использовал (добавление разрывов строк для удобства чтения):
Get-Content sourcefile.txt
| Foreach-Object {$_.Replace('http://example.com', 'http://another.example.com')}
| Set-Content result.txt
Отлично сработало! Никогда не занимал много памяти (он явно не загружал весь файл в память), а просто пыхтел несколько минут, а потом заканчивал.