(2)三剑客之grep
1)grep和egrep定义
grep:在文件中全局查找指定的正则表达式,并打印所有包含该表达式的行
egrep:扩展的egrep,支持更多的正则表达式元字符
2)命令格式
语法:grep [选项] pattern filename1 filename2 ....
#grep "root" /etc/passwd
找到:grep返回的退出状态为0
没找到:grep返回的退出状态为1
找不到指定文件:grep返回的退出状态为2
grep程序的输入可以来自标准输入或管道:ll /etc/ | grep "^d"
3)grep使用的元字符
grep: 使用基本的元字符 ^ $ . * [] [^] [-] \(\) m\{x\} \ \< \>
注:grep也可以使用扩展集中的元字符,仅需要对这些元字符前置一个反斜线
egrep :使用扩展的元字符 + ? () | x{m}
\w 所有字母与数字,[0-9A-Za-z]
\W 所有字符与数字以外的字符 [^0-9A-Za-z]
\b 词边界 "\broot\b" "\<root\>"
4)grep选项
-i 忽略大小写
-l 只列出匹配行所在的文件名 grep -l "root" /etc/passwd /etc/shadow
-n 在每一行前面加上它文件中的相对行号 grep -l "root" /etc/* 2>/dev/null 结合vim /etc/passwd +50 神器
-c 显示成功匹配的行数 grep -c "root" /etc/passwd
-s 禁止显示文件不存在或文件不可读的错误信息 grep -s "root" /etc/fdasfasdfadsfa
-q 静默
-v 反向查找,只显示不匹配的行
-R或-r 递归针对目录 grep -r "root" /etc/
--color 颜色
-o 只显示匹配的内容
-B 除了显示匹配的一行之外,并显示该行之前的num行 grep -B 2 "root" /etc/passwd
-A 除了显示匹配的一行之外,并显示该行之后的num行
-C 除了显示匹配的一行之外,并显示该行之前后各num行
5)常见例子
匹配ip地址:egrep "([0-9]+\.){3}([0-9]+)" /etc/sysconfig/network-scripts/ifcfg-ens33
查看帮助斜线转义:useradd --help | grep "\-g"
(2)三剑客之grep的更多相关文章
- linux三剑客之grep
linux基础三剑客之grep 1.grep命令 基本介绍 grep命令是文本本过滤工具,是基于一个模式匹配文件的每一行,grep分类:egrep个fgrep. grep英文名:Global sea ...
- (转)不看绝对后悔的Linux三剑客之grep实战精讲
不看绝对后悔的Linux三剑客之grep实战精讲 原文:http://blog.51cto.com/hujiangtao/1923675 https://www.cnblogs.com/peida/a ...
- shell三剑客之grep
背景 对于很多的测试人员来说,grep命令都很熟悉,用的最多的比如去查找指定的进程:ps -ef | grep *** ,其中***为进程名或进程号,这里我们只用到的grep的最基础功能-从标准输出中 ...
- Linux文本处理三剑客之grep及正则表达式详解
Linux文本处理三剑客之grep及正则表达式详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Linux文本处理三剑客概述 grep: 全称:"Global se ...
- shell 文本处理三剑客之 grep 和 egrep
shell 三剑客之 grep 命令语法格式 grep 参数 案例 显示file中有python的行 grep python file 显示没有python的行,不忽略大小写 grep -v pyth ...
- linux文本处理三剑客之 grep
文本处理无非是对文本内容做查看.修改等操作.Linux三剑客: grep.sed 和 awk 命令. 处理文本内容,用 Vim 编辑器不是很好吗?Vim 允许我们使用键盘.鼠标来对文本内容进行交互性地 ...
- Linux文本处理三剑客之——grep
一Linux文本处理三剑客之——grep Linux文本处理三剑客都支持正则表达式 grep :文本过滤( 模式:pattern) 工具,包括grep, egrep, fgrep (不支持正则表达式) ...
- Linux 三剑客之grep
目录 Linux 三剑客之grep 搭配命令-find 三剑客之grep: 正则表达式: Linux 三剑客之grep 搭配命令-find find命令是根据文件的名称或者属性查找文件,并不会显示文件 ...
- Linux中find命令与三剑客之grep和正则
昨日内容回顾 1.每个月的3号.5号和15号,且这天时周六时 执行 00 00 3,5,15 * 6 2.每天的3点到15点,每隔3分钟执行一次 */3 3-15 * * * 3.每周六早上2点半执行 ...
- linux中find与三剑客之grep用法
find用法 find一般用来用来查找文件名称 根据文件的名称或者属性查找文件. 语法格式: find [查找范围] [参数] 参数: -name : 按照文件的名字查找文件 * :通配符 -inam ...
随机推荐
- BZOJ4423 AMPPZ2013Bytehattan(并查集)
判断网格图中某两点是否被割开,可以将割边视为边区域视为点,转化为可切割这两点的区域是否连通.于是每次判断使两个区域连通后是否会形成环(边界视为连通),若是则说明被两点被割开.并查集维护. #inclu ...
- FFT多项式乘法模板
有时间来补算法原理orz #include <iostream> #include <cstdio> #include <cmath> #include <c ...
- 洛谷 P2827 蚯蚓 解题报告
P2827 蚯蚓 题目描述 本题中,我们将用符号 \(\lfloor c \rfloor\) 表示对 \(c\) 向下取整,例如:\(\lfloor 3.0 \rfloor = \lfloor 3.1 ...
- 【BZOJ 2822】[AHOI2012]树屋阶梯 卡特兰数+高精
这道题随便弄几个数就发现是卡特兰数然而为什么是呢? 我们发现我们在增加一列时,如果这一个东西(那一列)他就一格,那么就是上一次的方案数,并没有任何改变,他占满了也是,然后他要是占两格呢,就是把原来的切 ...
- Codeforces Round #526 (Div. 2) C. The Fair Nut and String
C. The Fair Nut and String 题目链接:https://codeforces.com/contest/1084/problem/C 题意: 给出一个字符串,找出都为a的子序列( ...
- 安卓tablayout控件的使用
1.加载依赖 api "com.android.support:design:26.1.0" 2.布局 <android.support.design.widget.TabL ...
- codeforces 1077D
题目:https://codeforces.com/contest/1077/problem/D 题意:给你一个长度为n的串,你需要在里面找到出现次数最多的长度为k的子序列(子序列中元素可重复),求这 ...
- power designer 绘制E-R 图
总体概括:本篇主要先介绍E-R图的一些基本概念,然后介绍怎么绘制E-R图,特别是用power designer 的反向工程怎么把表中对字段的注释也展示出来. 1.E-R图的基本概念: E-R图就是en ...
- JavaScript 被忽视的细节
语句/表达式 换个角度理解语句(statemaents)和表达式(expressions):表达式不会改变程序的运行状态,而语句会.还有一种叫做表达式语句,可以理解为表达式和语句的交集,如({a:1} ...
- TOM的show_space
show_space查看对像数据块的空闲情况 CREATE OR REPLACE PROCEDURE show_space(p_segname IN VARCHAR2, p_owner IN VARC ...