grep 指令是十分常用的字串搜索工具,可以对档案或 pipe 输入进行搜索,而 grep 指令也可以使用 or 或 and 对两个以上条件搜索。
OR
以下几种方法,也可以实现 or 搜索,会对两种字串进行搜索,只要符合其中一个条件,即会印出那行的内容:
$ grep ‘pattern1\|patten2’ file.txt
$ grep -E ‘pattern1|pattern2’ file.txt
$ egrep ‘pattern1|pattern2’ file.txt
$ grep -e pattern1 -e pattern2 file.txt
AND
除了 or 的用法,也可以有 and 的用法,即需要同时符合两个条件:
$ grep -E ‘pattern1.*pattern2’ file.txt
$ grep -E ‘pattern1.*pattern2|pattern2.*pattern1’ file.txt
$ grep -E ‘pattern1.*pattern2|pattern2.*pattern1’ file.txt
$ grep -e pattern1 -e pattern2 file.txt
I want to ask “$ grep -e pattern1 -e pattern2 file.txt” is for “OR” ? or “AND”?
这个是 or