我正在特定子目录下找到带有“负责任”字样的XML文件。搜索工作正常,如下所示。
find . -name '*.xml' -exec grep -H 'responsible' {} \;
./dir1/d1.xml<responsible><></responsible>
./dir2/d2.xml<responsible><SYSTEM></responsible>
./dir3/d3.xml<responsible><SYSTEM></responsible>
...等等。
有没有一种方法可以用空白替换所有出现的SYSTEM。
我正在寻找的结果是:
./dir1/d1.xml<responsible><></responsible>
./dir2/d2.xml<responsible><></responsible>
./dir3/d3.xml<responsible><></responsible>
答案 0 :(得分:1)
我会用perl馅饼
perl -p -i -e 's/<responsible><SYSTEM><\/responsible>/<responsible><><\/responsible>/' `find ./ -name *.xml`