当存在grep时,为什么find命令有-regex



find | grep REGEX在任何情况下都更快时,即使需要搜索少量文件,是否有充分的理由使用find -regex REGEX

如果没有,那么为什么-regex选项存在?当由于regex语法与其他实用程序(grep、sed、awk(不同而导致混乱时,为了更改它,您必须指定乏味的选项-regextype TYPE

至少在sed和grep中,指定-E使用扩展正则表达式而不是基本正则表达式就足够了。

它之所以具有它,是因为您可以将它与其他测试相结合,可能与复杂的布尔条件相结合。仅仅通过管道是不可行的。例如:

find -type f -regex 'regex1' -o -type d -regex 'regex2'

这对文件和目录使用不同的正则表达式。

find | grep REGEX可能更快,但灵活性较差。当使用find -regex时,您可以继续使用更多的查找选项,例如-exec,这可能与grep有关。

最新更新