同时grep多个pattern

命令行参数:
grep -i pattern files :不区分大小写地搜索。默认情况区分大小写, 
grep -l pattern files :只列出匹配的文件名, 
grep -L pattern files :列出不匹配的文件名, 
grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’), 
grep -C number pattern files :匹配的上下文分别显示[number]行, 
grep pattern1 | pattern2 files :显示匹配 pattern1 或 pattern2 的行,
grep pattern1 files | grep pattern2 :显示既匹配 pattern1 又匹配 pattern2 的行。

grep pattern1 | pattern2 files即grep多个pattern的方法。

但是'|'在linux的shell里起管道符作用,所以在bash/csh里,shell会把pattern2当命令看待,这样就会报错。

正确方法可以是:

grep 'pattten1\|pattern2' files

另外还有种写法:

grep -e 'pattern1' -e 'pattern2' -e 'pattern3’ files

grep -v ‘aaa’   加上-v 可排除’aaa'

man grep
    -v, --invert-match
        Invert the sense of matching, to select non-matching lines.

评论

评论正在提交中...请稍后
评论提交成功...