【发布时间】:2011-09-10 09:51:23
【问题描述】:
我正在使用sed -e 's/\(.*\)ABC/\1DEF/' myfile 将文件中最后出现的ABC 替换为DEF。
我想修改它,将文件中每一行中最后出现的ABC替换为DEF。
可以用正则表达式吗?
谢谢
【问题讨论】:
-
文件每一行其实都是
sed -e 's/\(.*\)ABC/\1DEF/' will replace last occurrence ofABC`。 -
@anubhava 是对的。事实上,我不确定你是否解释清楚了你在寻找什么。
-
@anubhava i 虽然它只是替换了文件中的最后一次出现,而不是每一行。我可能错了。最后用
/g对其进行了测试,就像建议的那样,效果也很好。 -
在我的 Ubuntu linux 和 Mac 上使用
/g标志不需要替换最后出现的ABC
标签: regex linux shell scripting sed