У меня есть пакетный скрипт, который может заменить текст, и я хочу, чтобы он заменил строки, за которыми следует новая строка текста под оригиналом. Пример будет следующим:
До:
Old string
После:
New
String
Я пробовал несколько команд новой строки, используемых в пакетном режиме (некоторые из которых можно найти на сайтах Stack Exchange), и ни одна из них не работает. Я считаю, что это из-за синтаксиса сценария. Вот сценарий, с которым я работаю:
@echo off
setlocal enableextensions disabledelayedexpansion
set search=Old string
set replace=New string
set textFile=Test.txt
:PowerShell
SET PSScript=%temp%\~tmpStrRplc.ps1
ECHO (Get-Content "%~dp0%textFile%").replace("%search%", "%replace%") ^| Set-Content "%~dp0%textFile%">"%PSScript%"
SET PowerShellDir=C:\Windows\System32\WindowsPowerShell\v1.0
CD /D "%PowerShellDir%"
Powershell -ExecutionPolicy Bypass -Command "& '%PSScript%'"
EXIT
Как я могу реализовать новую строку "инъекция" в моем скрипте?