При соответствии подстроке целой строки можно или использовать sed's s
команда с regex для вытирания остальной части строки:
sed -i 's/^.*foo.*$/another string/' myfile.txt
или используйте c
управляйте для замены подобранной строки сразу:
sed -i '/foo/ { c \
another string
}' myfile.txt
Если Вы не хотите вводить многострочные команды при подсказке, можно поместить ее в сценарий вместо этого:
$ cat foo.sed
/foo/ { c \
another string
}
$ sed -i -f foo.sed myfile.txt
}'
находится на отдельной строке отanother string
: замена - все на той второй строке, включая}
если Вы помещаете его там. – Useless 24.02.2012, 14:44