используя sed для замены 1 строки многострочной переменной в ksh

1040
Manda

У меня есть следующий текст в файле:

XXXX

NNNN

YYYY

NNNN

ZZZZ

NNNN

Я хочу заменить NNNN, чтобы он выглядел так:

XXXX

NNNN

ОБЯЗАТЕЛЬНЫЙ ПРОГНОЗ:

YYYY

NNNN

ОБЯЗАТЕЛЬНЫЙ ПРОГНОЗ:

ZZZZ

NNNN

ОБЯЗАТЕЛЬНЫЙ ПРОГНОЗ:

Как использовать sed для замены переменной более чем на одну строку? Есть ли лучший способ сделать это без использования sed?

Я пробовал следующее безрезультатно:

Тестовый файл sed 's / NNNN / "$ value1" / g'

Тестовый файл sed 's / NNNN /' "$ value1" '/ g'

Тестовый файл sed 's / NNNN / $ / g'

Тестовый файл sed 's / NNNN /' "$ " '/ g'

Я также попробовал все вышеперечисленное, используя двойные кавычки. Любая помощь с благодарностью. Спасибо!

1

1 ответ на вопрос

1
h.j.k.
$ value1="DUTY FORECASTER:" $ echo -e 'abc\ndef\nghi\ndef\n' | sed "s/def/def\n$value1/g" abc def DUTY FORECASTER: ghi def DUTY FORECASTER: 
Работает отлично! Огромное спасибо! Yippie! Manda 10 лет назад 0

Похожие вопросы