2012-02-15 54 views
0

我想用sed -e替换文件中的多个短语。问题是我想用字符串替换某些短语是否有这样做?因为当我做到这一点使用用一个字符串替换某些东西,然后sed -e

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

那么它不会有任何影响......

+1

只有在使用'-i'标志时,它才会在文件内被替换。否则,更改将显示在STDOUT上。 – cmbuckley 2012-02-15 17:12:47

+0

sed -i -e's/foo/$ bar /'-e's/some/$ text /'file.whatever? – 2012-02-15 17:14:47

+0

'echo's/foo/$ bar /'' – 2012-02-15 17:17:23

回答

2

当你说用字符串我相信你的意思是具有可变。如果是这种情况,只需将sed命令与双引号代替单引号即可。前者将允许可变扩展,后者不会。

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