继bash-hackers wiki's recommendation之后,我想使用ed编辑文件。使用ed来操纵查找匹配的文件
我特别想做的ED以下而不使用sed:
find . -type f -exec sed -i -e 's/a/b/g' {} \;
我看到ED并没有选择像sed的-e,从而据我所知,管道和IO重定向是以非交互方式使用它的唯一方法。
因此,使用编辑从bash脚本做同上sed的命令如下所示:
ed file_name <<<$'g/a/s//b/g\nw'
或者
echo $'g/a/s//b/g\nw' | ed file_name
但据我所知,这是不可能的涉及find的-exec内的管道或io重定向。
我想念什么?或者是克服这个问题的唯一方法是使用循环?
for file in $(find . -type f -print); do ed $file <<<$'g/a/s//b/g\nw'; done;
查看我刚才提到的链接,以及geirha的回答。 – theosp 2010-05-11 00:01:06