Linux grep命令详解

grep命令详解

语法格式:grep 【options】【pattern】【file】 grep [参数] [匹配模式] [查找的文件]
注意:
1.grep 是 Linux 系统中最重要的命令之一,其功能是从文本文件或管道数据流中筛选匹配的行及数据。
2.grep 命令里的匹配模式或模式匹配,都是你要好找的东西,可以是普通的文字符号也可以是正则表达式。

grep命令选项
--color=auto: 对匹配到的文本着色显示 
-m  #  匹配#次后停止 
-v 显示不被pattern匹配到的行 
-i 忽略字符大小写 
-n 显示匹配的行号 
-c 统计匹配的行数 
-o 仅显示匹配到的字符串 
-q 静默模式,不输出任何信息 
-A # after, 后#行 
-B # before, 前#行 
-C # context, 前后各#行 
-e 实现多个选项间的逻辑or关系  
	grep –e ‘cat ’  -e ‘dog’  file 
-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\> 匹配整个单词 
练习
找出ifconfig “网卡名” 命令结果中本机的IPv4地址#
ifconfig ens33 | grep netmask | tr -s " " ":"|cut -d: -f3 

、查出分区空间使用率的大百分比值 
df | grep ^/dev | tr -s " " ":" | cut -d: -f5 |cut -d% -f1 | sort -nr | head -n1 
 
 查出用户UID大值的用户名、 UID及shell类型 
 cat /etc/passwd|cut -d: -f1,3,7|sort -nr -t":" -k2|head  -1 
 
 使用egrep取出/etc/rc.d/init.d/functions中其基名 
 echo /etc/rc.d/init.d/functions|egrep -o "[^/]+/?$" 
 
 使用egrep取出上面路径的目录名 
 echo /etc/rc.d/init.d/functions |egrep -o "/.*[^/]"|egrep -o "/.*/" 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值