grep命令

2017-06-25  本文已影响37人  古寒飞

基本命令

命令格式

grep [参数] [条件] [文件名]

基本用法

grep 'a' bbb.txt

-------------------------------------------------------------------------------

grep的参数(option)

-i      忽略大小写

-o    仅显示符合条件的内容

-e    同时根据多个条件过滤内容

-v    反向过滤

-E    支持扩展正则表达式

-A n      显示符合条件的后n行内容

-B n      显示符合条件的前n行内容

-n     显示行号

示例:

grep -i 'a' bbb.txt

grep -o 'a' bbb.txt

grep -e 'aaa' -e 'bbb' -e 'ccc' bbb.txt

grep -v 'aaa' bbb.txt

grep -E 'bin|sbin' bbb.txt

cat bbb.txt | grep -A 3 "lalala"

cat bbb.txt | grep -B 5 "lalala"

-------------------------------------------------------------------------------

grep的条件

有以下五种:

01---按“正则表达式”匹配

02---按“特殊字符集”匹配

03---按“字符的位置”匹配

04---按“出现的次数”匹配

05---匹配“空行”

01.按正则表达式匹配

匹配任意单个字符(.)

示例:grep '.j' bbb.txt
---------------------------------------------

匹配其中任意一个字符([ ])

示例:grep '[jtk]' bbb.txt
---------------------------------------------

匹配连续字符范围(“-”,例如:[a-z][A-Z][0-9][a-zA-Z])

示例:grep '[a-z]' bbb.txt
---------------------------------------------

匹配结果取反(“^”,例如:[^a-z][^0-9])

示例:grep '[^a-z]' bbb.txt

-------------------------------------------------------------------------------

02.特殊字符集匹配

[[:digit:]]      任意单个数字

[[:alpha:]]    任意单个字母

[[:upper:]]    任意单个大写字母

[[:lower:]]     任意单个小写字母

[[:alnum:]]    任意单个数字、字母

[[:space:]]    任意单个空白字符

[[:punct:]]    任意单个标点
---------------------------------------------

示例:grep "[[:digit:]]" bbb.txt

-------------------------------------------------------------------------------

03.匹配字符出现的位置

^string     匹配以string开头的行

示例:grep '^w' bbb.txt
---------------------------------------------

string$     匹配以string结束的行

示例:grep 'b$' bbb.txt

-------------------------------------------------------------------------------

04.匹配字符出现的次数

*      前一个字符出现任意次 ab*

示例:grep 'ab*' bbb.txt
---------------------------------------------

\?     前一个字符出现0次或者1次可有可无

示例:grep 'ab\?' bbb.txt
---------------------------------------------

\+      前一个字符出现1次或者多次(反斜杠代表转义)

示例:grep 'ab\+' bbb.txt
---------------------------------------------

\{4\} 前一个字符精确出现4次(反斜杠代表转义)

示例:grep 'a\{4\}' bbb.txt
---------------------------------------------

{2,4}匹配出现2~4次的行        {2,}匹配出现大于2次的行

示例:grep 'a\{2,4\}' bbb.txt

示例:grep 'a\{2,\}' bbb.txt

-------------------------------------------------------------------------------

05.匹配空行

示例:grep '^$' bbb.txt

-------------------------------------------------------------------------------

全文结束!!!

上一篇下一篇

猜你喜欢

热点阅读