【发布时间】:2012-12-13 17:18:45
【问题描述】:
将 grep 与 sed 结合使用时,只要使用标准的正斜杠分隔符,一切都可以。
find . -maxdepth 2 -xdev -type f -exec grep -i "teststring" -l {} \; -exec sed -i '/./d' {} \;
如果我将它更改为另一个字符,如“+”或“#”,它不起作用(我需要更改它,因为测试字符串可能包含“/”字符并导致错误。
find . -maxdepth 2 -xdev -type f -exec grep -i "teststring" -l {} \; -exec sed -i '#.#d' {} \;
这个问题有办法解决吗?
【问题讨论】:
-
等一下。你为什么使用 grep 和 sed?告诉我们您要做什么,因为无论是什么,都有更好的方法!
-
查找所有存在测试字符串的文件并(有几种变体)删除文件内容/删除行/或删除字符串。