我通常使用以下流水线来为特定的搜索字符串进行grep,但忽略某些其他模式:
grep -Ri 64 src/install/ | grep -v \.svn | grep -v "file"| grep -v "2\.5" | grep -v "2\.6"
这可以简洁地实现吗?我使用GNU grep 2.5.3。
只需将未经过滤的输出输出到一个单一的grep实例中,并使用一个扩展的正则表达式来声明你想要忽略的内容:
原文链接:https://www.f2er.com/bash/388186.htmlgrep -Ri 64 src/install/ | grep -v -E '(\.svn|file|2\.5|2\.6)'
find ./src/install -type f -print |\ grep -v -E '(\.svn|file|2\.5|2\.6)' | xargs grep -i 64
编辑:哦我忘了添加简单的技巧来停止多次使用grep实例,即
ps -ef | grep something | grep -v grep
替换
ps -ef | grep "[s]omething"
消除了第二个grep的需要。