2012-02-15 55 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