Как заменить текст после определенной строки в файле, используя Unix? - PullRequest
0 голосов
/ 02 мая 2018

Я пытаюсь найти строку и заменить текст рядом с ней .. Я знаю, что SED можно использовать для поиска строки и ее замены.

пример приведен ниже.

Входной файл:

Some text 
Random option:"To Replace Text"

Выходной файл:

Some text 
Random option:"Replaced Text"

Я попробовал следующее.

grep 'option:' inputfile.txt> temp.txt - так что это дает строку с 'option:' для tempfile

$ toReplace = cut -c 17-32 tempfile - это дает 'TO Replace Text'

sed 's / $ toReplace / $ toBeReplaced /' inputfile.txt> outfile.txt

Я отправляю текст $ toBeReplaced из командной строки ..

Это работает, но я не хочу использовать команду вырезания, так как позиция может измениться в реальном требовании.

1 Ответ

0 голосов
/ 02 мая 2018

Эта строка может вам помочь:

sed 's/\(Random option:"\)[^"]*/\1ReplacedTxt/' file
...