2012-02-15 4 views
0

Я хочу заменить множительные фразы в файле с помощью sed -e. Проблема в том, что я хочу заменить определенные фразы на строку, так или иначе, чтобы это сделать? Потому что, когда я делаю это с помощьюЗамените что-нибудь строкой и sed -e

sed -e 's/foo/$bar/' -e 's/some/$text/' file.whatever 

, то он не имеет никакого эффекта ...

+1

Он будет заменен только в файле, если вы используете флаг '-i'. В противном случае изменения отображаются в STDOUT. – cmbuckley

+0

sed -i -e 's/foo/$ bar /' -e 's/some/$ text /' file.whatever? –

+0

'echo 's/foo/$ bar /'' –

ответ

2

Когда вы говорите со строкой Я считаю, что вы имеете в виду с переменной. Если это так, просто выполните команду sed с двойными кавычками вместо одиночных кавычек. Первый будет допускать переменное расширение, последнее не будет.

sed -e "s/foo/$bar/" -e "s/some/$text/" file.whatever 
Смежные вопросы