Shell 文本处理三剑客之grep
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
12345
54321
[root@gitlab grep]# cat b.txt
12345
678910
12345
[root@gitlab grep]# grep -f a.txt b.txt
12345
12345
[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
过滤出来不是以#开头的行
Shell 文本处理三剑客之grep的更多相关文章
- shell 文本处理三剑客之 grep 和 egrep
shell 三剑客之 grep 命令语法格式 grep 参数 案例 显示file中有python的行 grep python file 显示没有python的行,不忽略大小写 grep -v pyth ...
- Linux文本处理三剑客之grep及正则表达式详解
Linux文本处理三剑客之grep及正则表达式详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Linux文本处理三剑客概述 grep: 全称:"Global se ...
- Linux文本处理三剑客之——grep
一Linux文本处理三剑客之——grep Linux文本处理三剑客都支持正则表达式 grep :文本过滤( 模式:pattern) 工具,包括grep, egrep, fgrep (不支持正则表达式) ...
- 文本处理三剑客之 grep
grep简介 grep(Global search REgular expression and Print out the line)是Linux上的文本处理三剑客之一,另外两个是sed和awk. ...
- Linux 文本处理三剑客之grep
文本处理都要使用正则表达式,正则表达式有: 基本正则表达式:grep或者egrep -G 扩展正则表达式:egreo或者grep -E Linux 文本处理三剑客: sed:stream editor ...
- 文本处理三剑客之grep&正则表达式
grep是一个文本过滤工具,它支持正则表达式,能把搜索匹配到的行打印出来.grep的全称是Global Regular Expression Print(全局正则表达式)使用权限是所有用户. 一.gr ...
- linux文本处理三剑客之 grep
文本处理无非是对文本内容做查看.修改等操作.Linux三剑客: grep.sed 和 awk 命令. 处理文本内容,用 Vim 编辑器不是很好吗?Vim 允许我们使用键盘.鼠标来对文本内容进行交互性地 ...
- Linux文本处理三剑客之grep
简介 grep命令,用于在一个文本文件中或者从STDIN中,根据用户给出的模式(pattern)过滤出所需要的信息. grep以及三剑客中的另外两个工具sed和awk都是基于行处理的,它们会一行行读入 ...
- 文本处理三剑客之 grep/egrep
grep:文本过滤工具 支持BRE egrep: 支持ERE fgrep: 不支持正则 作用:根据用户指定的“模式”,对目标文本逐行进行匹配检查,打印匹配到的行 模式:由正则表达式字符及文本字符所编写 ...
随机推荐
- 数据库_Redis 入门基础到高级
一.PHP消息队列实现及应用 二.消息队列的优缺点 三.消息队列的配置和准备工作 案例如下: 下面是队列表字段及属性 四.Mysql订单队列 1.接受订单,并写入数据 order.php <?p ...
- nodejs+expressjs+ws实现了websocket即时通讯,服务器和客户端互相通信
nodejs代码 // 导入WebSocket模块: const WebSocket = require('ws'); // 引用Server类: const WebSocketServer = We ...
- Python基于Python实现批量上传文件或目录到不同的Linux服务器
基于Python实现批量上传文件或目录到不同的Linux服务器 by:授客 QQ:1033553122 实现功能 1 测试环境 1 使用方法 1 1. 编辑配置文件conf/rootpath_fo ...
- 数学建模-灰色预测模型GM(1,1)_MATLAB
GM(1,1).m %建立符号变量a(发展系数)和b(灰作用量) syms a b; c = [a b]'; %原始数列 A A = [174, 179, 183, 189, 207, 234, 22 ...
- (后端)maven仓库
仓库网址:http://mvnrepository.com/artifact/org.springframework/spring-core 可以去选择评分高的jar,复制: <!-- http ...
- Git基本操作和GtHub 特殊技巧
<GitHub 入门与实践> 笔记 了解GitHub Git 和 GitHub 的区别 在Git中,开发者将源代码存入名为"Git仓库"的资料库中,并加以使用.而Git ...
- Django 登录验证-自动重定向到登录页
Web项目有些场景需要做用户登录验证,以便访问不同页面. 方法一:login_required装饰器 适用于函数视图. from django.contrib.auth.decorators impo ...
- [20190214]11g Query Result Cache RC Latches.txt
[20190214]11g Query Result Cache RC Latches.txt --//昨天我重复链接http://www.pythian.com/blog/oracle-11g-qu ...
- Amazon onsite behavior question
https://www.1point3acres.com/bbs/thread-307462-1-1.html http://kraftshala.com/how-to-raise-the-bar-i ...
- Linux for python教程02
目录 1. Linux用户及权限管理 1.1. who 1.2. 查看当前用户: whoami 1.3. 添加用户账号: useradd 1.4 切换用户 su 2.用户组 3. 修改文件权限: ch ...