grep的全部使用语法参照grep --help,日常工作常用的语法如下:
构造数据如下:test001.txt与test002.txt

一、在单个文件中查询指定字符串

grep abc  test01/test01.txt

查看结果如下:

 

二、在多个文件中查找指定字符串(并支持问文件通配符)

grep -i cdE ./*/*

 

三、过滤多个关键字:“与”和“或”(cat+管道+grep实现)

cat test01/test01.txt | grep ab |grep cd #同时包含ab与cd

cat test01/test01.txt | grep -E "ab|cd"  #包含ab或cd

 

四、查找的过程中忽略大小写(grep -i)

grep -i abcd */*

 

五、匹配完整的单词,而不是子串(grep -w)

grep -w ab */*

 

六、高亮grep的显示结果(grep --color=auto)

alias grep='grep --color=auto'

查看alias快捷命令是否已经添加过grep的高亮显示设置,否则添加以上的快捷指令 或直接带颜色查询

grep --color=auto abc test01/test01.txt

 

七、使用 -r 参数来实现递归的搜索目录(grep -r)

不使用递归时只能查询指令的目录下的文件,使用递归时可以逐层查询

grep -r abc ./*

 

八、取反搜索结果(grep -v)

grep  -v abc test01/test01.txt

 

九、取反(多个)指定模式的匹配结果

grep  -v -e ab -e cd  test01/test01.txt 

 

十、只显示匹配命中的文件名称,而不显示具体匹配的内容(grep -l)

grep -l abc test01/test01.txt

 

十一、显示匹配的字符串位置。该位置是相对于整个文件的字节位置,不是行数(grep -b)

grep -b abc test01/test01.txt

 

十二、显示匹配的字符串在文件中的行数(grep -n)

grep -n abc test01/test01.txt

十三、显示所匹配行的前后行信息(grep -A(after),grep -B(before),grep -C(可省略after+before))

grep -nw -A2 abcd test01/test01.txt  #-A之后n行
grep -nw -B2 abcd test01/test01.txt #-B之前n行
grep -nw -C2 abcd test01/test01.txt #-C前后n行
grep -nw -2 abcd test01/test01.txt #-C省略前后n行

 

十四、正则匹配以x开头(以y结尾)的字符

grep "^a" test01/test01.txt  #以a开头
grep "^a..d$" test01/test01.txt #以a开头以d结尾

 

 十五、统计复合结果条件的行数(grep -c)

grep -c ab test01/test01.txt

 

grep使用常用操作十五条的更多相关文章

  1. Python脚本控制的WebDriver 常用操作 <十二> send_keys模拟按键输入

    下面将使用WebDriver中的send_keys来模拟键盘按键输入 测试用例场景 send_keys方法可以模拟一些组合键操作: ctrl+a ctrl+c ctrl+v 等. 另外有时候我们需要在 ...

  2. Python脚本控制的WebDriver 常用操作 <十> 层级定位

    下面将使用WebDriver来模拟操作一个层级定位元素的操作 测试用例场景 在实际的项目测试中,经常会有这样的需求:页面上有很多个属性基本相同的元素,现在需要具体定位到其中的一个.由于属性基本相当,所 ...

  3. Python脚本控制的WebDriver 常用操作 <十九> 获取测试对象的状态

    下面将使用webdriver来模拟测试中观察测试对象的状态的操作 测试用例场景 在web自动化测试中,我们需要获取测试对象的四种状态 是否显示.使用element.is_displayed()方法: ...

  4. Python脚本控制的WebDriver 常用操作 <十六> 处理对话框

    下面将使用webdriver来处理一些页面跳出的对话框事件 测试用例场景 页面上弹出的对话框是自动化测试经常会遇到的一个问题.前端框架的对话框经常是div形式的,下面是一些常见的对话框操作事件: 打开 ...

  5. Python脚本控制的WebDriver 常用操作 <十五> 处理Navigation Bar

    下面将使用WebDriver来模拟操作:选择一个Navigation bar的选项 测试用例场景 Navigation Bar可以看作是简单的类似于tab的导航栏.一般来说导航栏都是ul+li.先定位 ...

  6. Python脚本控制的WebDriver 常用操作 <十四> 处理button dropdown 的定位

    测试用例场景 模拟选择下拉菜单中数据的操作 Python脚本 测试用HTML代码: <html> <body> <form> <select name=&qu ...

  7. Python脚本控制的WebDriver 常用操作 <十八> 获取测试对象的css属性

    测试用例场景 当你的测试用例纠结细枝末节的时候,你就需要通过判断元素的css属性来验证你的操作是否达到了预期的效果.比如你可以通过判断页面上的标题字号以字体来验证页面的显示是否符合预期.当然,这个是强 ...

  8. Linux 笔记 - 第十五章 MySQL 常用操作和 phpMyAdmin

    博客地址:http://www.moonxy.com 一.前言 前面几章介绍了 MySQL 的安装和简单的配置,只会这些还不够,作为 Linux 系统管理员,我们还需要掌握一些基本的操作,以满足日常管 ...

  9. Spring Boot入门系列(十九)整合mybatis,使用注解实现动态Sql、参数传递等常用操作!

    前面介绍了Spring Boot 整合mybatis 使用注解的方式实现数据库操作,介绍了如何自动生成注解版的mapper 和pojo类. 接下来介绍使用mybatis 常用注解以及如何传参数等数据库 ...

随机推荐

  1. ebook下载 | 灵雀云发布《 企业高管IT战略指南——为何选择容器与Kubernetes》

    发送关键词[高管指南]至灵雀云公众号,立即下载完整版电子书 "本书将提供企业领导者/IT高管应该了解的,所有关于容器技术和Kubernetes的基础认知和关键概念,突破技术语言屏障,全面梳理 ...

  2. linux-基于tensorflow2.x的手写数字识别-基于MNIST数据集

    数据集 数据集下载MNIST 首先读取数据集, 并打印相关信息 包括 图像的数量, 形状 像素的最大, 最小值 以及看一下第一张图片 path = 'MNIST/mnist.npz' with np. ...

  3. jenkins自动触发构建

    1. 安装jenkins cat /etc/yum.repos.d/jenkins.repo [jenkins] name=Jenkins baseurl=http://pkg.jenkins.io/ ...

  4. JSP 入门学习

    概念:java Server Pages java服务器页面 一个特殊的,既可以定义html标签,也可以定义Java代码 用于简化书写 原理 在浏览器上访问 jsp文件时 服务器先解析请求,找到是否有 ...

  5. Linux yum搭建私有仓库

    搭建yum仓库需要两种资源: rpm包 rpm包的元数据(repodata) 搭建好仓库后需要使用三种网络协议共享出来 http或https ftp 范例: 使用http协议搭建私有仓库 (本示例使用 ...

  6. NC200211 装备合成

    NC200211 装备合成 题目 题目描述 牛牛有 \({x}\) 件材料 \({a}\) 和 \({y}\) 件材料 \({b}\) ,用 \({2}\) 件材料 \({a}\) 和 \({3}\) ...

  7. 使用xpath查找元素的子元素,找不到

    List<WebElement> allUserList = driver.findElements(By.xpath("xxx")); for (WebElement ...

  8. Solution -「Hdu3037」Saving Beans

    Prob. 给定 \(m\) 个相同球,\(n\) 个不同的盒子. 求在这 \(n\) 个盒子中放不超过 \(m\) 个球的方案数,并对 \(p\) 取模. 其中 \(1 \leq n, m \leq ...

  9. CF1701A Grass Field 题解

    根据题意,给定一个 \(2\times2\) 的仅包含 \(0\) 和 \(1\) 的二维数组.定义一个操作,每次可以选择一行和一列将其变成 \(0\),求最小操作次数. 思路:根据枚举可得共有 \( ...

  10. while练习题_1到100之间的偶数和

    依然是while循环四步骤 初始化变量 条件判断 条件执行体 最后就是输出答案就可以了 点击查看笔者代码 a = 1 sum = 0 while a <= 100: if (a+1)%2:#if ...