将以下功能替换为宏时出现问题。
原帖:
function("<message>);
必填项:
`macro("message")
即。必须将函数更改为多个文件中的宏(每次不同的消息)并删除分号。我试过下面的命令。
grep -rl 'function' ./ | xargs sed -i 's/function/`macro/g'
这解决了我的一半问题。即在消息之前替换前部。替换分号时卡住了。
注意:不得打扰其他分号。
答案 0 :(得分:0)
尝试一下:
grep -rl 'function' ./ | xargs sed -i '/function/{s/function/`macro/g;s/;\s*$//}'
答案 1 :(得分:0)
使用反向引用来执行整个更新:
grep -rl 'function' ./ | \
xargs sed -i 's/function("<\(.*\)>);/`macro("\1")/g'