Linux之grep命令

grep 是 Linux 系统中最重要的命令之一, 其功能是从文本文件或管道数据流中筛选匹配的行及数据

语法格式:

grep [options][pattern][file]

grep命令选项:

--color=auto: 对匹配到的文本着色显示 
-m num  匹配num次后停止 
-v 显示不被pattern匹配到的行 
-i 忽略字符大小写 
-n 显示匹配的行号 
-c 统计匹配的行数 
-o 仅显示匹配到的字符串 
-q 静默模式,不输出任何信息 
-A num (after), 后num行 
-B num (before), 前num行 
-C num (context), 前后各num行 
-e 实现多个选项间的逻辑or关系
-w 匹配整个单词 
-E 使用ERE 
-F 相当于fgrep,不支持正则表达式 
-f file 根据模式文件处理

基本正则表达式元字符

字符匹配: 
. 匹配任意单个字符  
[]   匹配指定范围内的任意单个字符,示例:[wang]   [0-9]    [a-z]   [a-zA-Z]  
[^]  匹配指定范围外的任意单个字符  
[:alnum:] 字母和数字   
[:alpha:] 代表任何英文大小写字符,亦即 A-Z, a-z  [:lower:] 小写字母    
[:upper:] 大写字母  
[:blank:] 空白字符(空格和制表符)  
[:space:] 水平和垂直的空白字符(比[:blank:]包含的范围广)  
[:cntrl:] 不可打印的控制字符(退格、删除、警铃...)  [:digit:] 十进制数字 
[:xdigit:]十六进制数字  
[:graph:] 可打印的非空白字符  
[:print:] 可打印字符  [:punct:] 标点符号

正则表达式

匹配次数:用在要指定次数的字符后面,用于指定前面的字符要出现的次数  

* 匹配前面的字符任意次,包括0次   
  贪婪模式:尽可能长的匹配  
  .* 任意长度的任意字符  
  \? 匹配其前面的字符0或1次  
  \+ 匹配其前面的字符至少1次  
  \{n\} 匹配前面的字符n次  
  \{m,n\} 匹配前面的字符至少m次,至多n次  
  \{,n\} 匹配前面的字符至多n次  
  \{n,\} 匹配前面的字符至少n次

位置锚定:定位出现的位置  
^ 行首锚定,用于模式的最左侧  
$ 行尾锚定,用于模式的最右侧  
^PATTERN$  用于模式匹配整行   
^$  空行   
^[[:space:]]*$  空白行  
\< 或 \b 词首锚定,用于单词模式的左侧  
\> 或 \b 词尾锚定,用于单词模式的右侧  
\<PATTERN\> 匹配整个单词
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值