如果有人擅长正则表达式模式,替换字符串和 bash - 你可以帮我一个大忙:
我在一个目录中有一堆源文件,这些文件在不同的地方都有这一行。该行之前可能有空格。
RELEASE_AND_NIL(_theNameOfAVariable);
我想转换所有出现,覆盖文件:
[_theNameOfAVariable release];
..请指点?我认为之前有人向我展示了如何使用 sed 执行此操作,但我忘了那是很久以前的事了。
谢谢
编辑
我最后使用的实际命令是:(感谢@fardjad)
find . -name '*.m' -print0 | xargs -0 sed -i "" "s/RELEASE_AND_NIL(\(.*\))/[\1 release\]/g"