Я хочу заменить строки между двумя строками [REPORT]
и [TAGS]
. Файл выглядит так
Many lines
many lines
they remain the same
[REPORT]
some text
some more text412
[TAGS]
text that I Want
to stay the same!!!
Я использовал sed
в cygwin :
sed -e '/[REPORT]/,/[TAGS]/c\[REPORT]\nmy text goes here\nAnd a new line down here\n[TAGS]' minput.txt > moutput.txt
который дал мне это:
Many lines
many lines
they remain the same
[REPORT]
my text goes here
And a new line down here
[TAGS]
text that I Want
to stay the same!!!
Когда я делаю это и открываю выходной файл в Блокноте, новые строки не отображаются. Я предполагаю, что это из-за проблемы с форматированием, простой Dos2Unix
должен решить проблему.
Но из-за этого, а также в основном из-за того, что не все мои коллеги имеют доступ к cygwin
Мне было интересно, есть ли способ сделать это в cmd (или Powershell
, если нет возможности сделать партию).
В конце концов, я хочу запустить это на количестве файлов и заменить этот раздел (между этими двумя вышеупомянутыми словами) на текст, который я предоставляю.