日常记录

2019-07-02

2019-07-02  本文已影响0人  YX_Andrew

Linux: grep多个关键字“与”和“或”

1、或操作

<pre class="prettyprint cs" name="code" style="box-sizing: border-box; outline: 0px; margin: 0px 0px 24px; padding: 8px 16px 4px 56px; position: relative; font-family: Consolas, Inconsolata, Courier, monospace; overflow: auto hidden; white-space: pre-wrap; overflow-wrap: break-word; font-size: 14px; line-height: 22px; color: rgb(0, 0, 0); background-color: rgb(246, 248, 250); border: none;">grep -E '123|abc' filename // 找出文件(filename)中包含123或者包含abc的行
egrep '123|abc' filename // 用egrep同样可以实现
awk '/123|abc/' filename // awk 的实现方式</pre>

2、与操作

<pre class="prettyprint perl" name="code" style="box-sizing: border-box; outline: 0px; margin: 0px 0px 24px; padding: 8px 16px 4px 56px; position: relative; font-family: Consolas, Inconsolata, Courier, monospace; overflow: auto hidden; white-space: pre-wrap; overflow-wrap: break-word; font-size: 14px; line-height: 22px; color: rgb(0, 0, 0); background-color: rgb(246, 248, 250); border: none;">grep pattern1 files | grep pattern2 //显示既匹配 pattern1 又匹配 pattern2 的行。</pre>

3、其他操作

<pre class="prettyprint cs" name="code" style="box-sizing: border-box; outline: 0px; margin: 0px 0px 24px; padding: 8px 16px 4px 56px; position: relative; font-family: Consolas, Inconsolata, Courier, monospace; overflow: auto hidden; white-space: pre-wrap; overflow-wrap: break-word; font-size: 14px; line-height: 22px; color: rgb(0, 0, 0); background-color: rgb(246, 248, 250); border: none;">grep -i pattern files //不区分大小写地搜索。默认情况区分大小写,
grep -l pattern files //只列出匹配的文件名,
grep -L pattern files //列出不匹配的文件名,
grep -w pattern files //只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’),
grep -C number pattern files //匹配的上下文分别显示[number]行,</pre>

上一篇下一篇

猜你喜欢

热点阅读