sed:如何替换包含某个字符串的所有行?

时间:2010-10-13 09:20:15

标签: string sed

说我有一个包含这些行的文件:

tomatoes
bananas
tomatoes with apples
pears
pears with apples

如何使用“oranges”替换包含单词“apples”的每一行?这就是我想要的结果:

tomatoes
bananas
oranges
pears
oranges

2 个答案:

答案 0 :(得分:6)

使用sed 's/.*apples.*/oranges/'

答案 1 :(得分:0)

你可以使用awk

$ awk '/apples/{$0="orange"}1' file
tomatoes
bananas
orange
pears
orange

这说要搜索苹果,然后将整个记录更改为“橙色”。