三剑客之grep
grep
全拼:global search regular expression and print out the line
作用:文本搜索工具,根据用户指定的“模式”(过滤条件)对目标文本逐行进行匹配检查,打印匹配到的行
模式:由正则表达式 元字符 及 文本字符 所编写出的 过滤条件
语法
grep [options] [pattern] file
命令 参数 匹配模式 文件数据
-i:ignorecase 忽略字符大笑写
-o:仅显示匹配道的字符串本身;
-v,--invert-match:显示不能被模式匹配的行;
-E:支持使用扩展的正则表达式元字符
-q,--quiet,--silent:静默模式,即不输出任何信息;
参数选项 | 解释说明 |
---|---|
-v | 排除匹配结果 |
-n | 显示匹配行与行号 |
-i | 不区分大小写 |
-c | 只统计匹配的行数 |
--color=auto | 为grep过滤结果添加颜色 |
-o | 只输出匹配的内容 |
案例
[root@xuexi3 /]# grep -i root pwd.txt
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
roo:x:1000:1000:root:/home/roo:/bin/bash
[root@xuexi3 /]# grep -i "root" pwd.txt
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
roo:x:1000:1000:root:/home/roo:/bin/bash
[root@xuexi3 /]# grep -i "root" ./pwd.txt -c
3
[root@xuexi3 /]# grep -i "小王" ./pwd.txt -c
0
#查找文件中的空行
[root@xuexi3 /]# grep "^$" ceshi1.txt
#空行
#查找除了空行以外的
[root@xuexi3 /]# grep "^$" ceshi1.txt -v