在文件中查找和替换

时间:2014-10-23 21:57:51

标签: replace

目标:编写脚本以查找语句的所有实例" x = x + 1"它应该改为" x ++"

我的想法:我会使用for循环遍历文件中的每一行。然后我将使用sed命令替换" x = x + 1"的每个实例。使用" x ++"

for line in filename do
sed -i /s/"*=*+1"/replacement/g

我无法弄清楚如何将其变成正确的代码。

2 个答案:

答案 0 :(得分:1)

您可以使用sed的就地参数(-i或--i​​n-place):

sed -i 's/x=x+1/x++/g' someFile.c

这将产生相同的结果,并且效率高于:

sed 's/x=x+1/x++/g' someFile.c > someFileNew.c; mv someFileNew.c someFile.c

答案 1 :(得分:1)

test.txt包含
X = X + 1个
年龄=年龄+ 1

这段代码会做你想要的重量:

sed -i 's/\(.*\)=.*+1$/\1++/g' text.txt