博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Shell 文本处理三剑客之grep
阅读量:6706 次
发布时间:2019-06-25

本文共 1628 字,大约阅读时间需要 5 分钟。

grep

♦参数

-E,--extended-regexp              模式是扩展正则表达式-i,--ignore-case                  忽略大小写-n,--line-number                  打印行号-v,--invert-match                 打印不匹配的行-o,--only-matching                只打印匹配的内容-m,--max-count=NUM               输出匹配的结果 num 数-c,--count                        只打印每个文件匹配的行数-r,--recursive                    递归目录 -w,--word-regexp                  模式匹配整个单词 --include=FILE_PATTERN             只检索匹配的文件

 ♦示例

1.过滤b文件中与a文件相同的行

[root@gitlab grep]# cat a.txt 1234554321[root@gitlab grep]# cat b.txt 1234567891012345[root@gitlab grep]# grep -f a.txt b.txt 1234512345[root@gitlab grep]# grep -f b.txt a.txt 12345[root@gitlab grep]#

2.过滤b文件中与a文件不同的行

[root@gitlab grep]# grep -v -f a.txt b.txt 678910

3.匹配出去空行和以#开头的行

[root@gitlab grep]# grep -E -v "^$|^#" /etc/fstab

 4.精确匹配

[root@gitlab grep]# echo ” this is a test“ | egrep -w -o 'is' is

-w 匹配到整个单词 -o 输出匹配到的单词

5.输出匹配的前五个结果

[root@gitlab grep]# seq 1 20 | grep -E -m 5 [0-9]{2} 10 11 12 13 14

 6.统计匹配多少行

[root@gitlab grep]# seq 1 20 | grep -c -E '[0-9]{2}'11

 7.匹配以b开头的行

# echo "a bc de" |xargs -n1 |grep '^b'

 8.匹配de字符结尾的行,并输出匹配的行号

echo "a ab abc abcd abcde" |xargs -n1 |grep -n 'de$'

 9.

→递归搜索/etc目录下包含UUID的所有文件

[root@gitlab grep]# grep -r 'UUID' /etc --include \*

→递归搜索/etc 目录下包含 ip 的 conf 后缀文件

[root@gitlab grep]# grep -r '192.167.1.1' /etc --include *.conf/etc/ip.conf:192.167.1.1

 10.匹配所有IP

[root@gitlab shell]# ifconfig |grep -E -w -o "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}"

 11.杂谈

grep [^#] /data/zabbix/etc/zabbix_server.conf匹配除了#以外任意的字符grep ^[^#] /data/zabbix/etc/zabbix_server.conf过滤出来不是以#开头的行

 

 

 

 

转载于:https://www.cnblogs.com/charon2/p/10552091.html

你可能感兴趣的文章
微波炉炖蛋
查看>>
C#调用C/C++ DLL 参数传递和回调函数的总结
查看>>
非spring组件servlet、filter、interceptor中注入spring bean
查看>>
SQL Server中SELECT会真的阻塞SELECT吗?
查看>>
class path and classloader
查看>>
文字检测与识别 资源
查看>>
外包筛选心得
查看>>
Warning: skipping non-radio button in group
查看>>
dotnet检测类型是否为泛型
查看>>
Android 悬浮窗权限校验
查看>>
使用CefSharp在.Net程序中嵌入Chrome浏览器(九)——性能问题
查看>>
mysql 创建数据库 并设置utf8格式
查看>>
IDA 逆向工程 反汇编使用
查看>>
CentOS7单独安装Apache Bench压力测试工具
查看>>
python植入后门backdoor程序的方法?
查看>>
WPF 使用 Direct2D1 画图 绘制基本图形
查看>>
导入其他python文件或者python文件的函数
查看>>
80端口被NT kernel & System 占用pid 4
查看>>
ThreadPoolExecutor的corePoolSize和maximumPoolSize
查看>>
Multiverse in Doctor Strange // Multiverse在《神秘博士》
查看>>