grep使用常用操作十五条
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使用常用操作十五条的更多相关文章
- Python脚本控制的WebDriver 常用操作 <十二> send_keys模拟按键输入
下面将使用WebDriver中的send_keys来模拟键盘按键输入 测试用例场景 send_keys方法可以模拟一些组合键操作: ctrl+a ctrl+c ctrl+v 等. 另外有时候我们需要在 ...
- Python脚本控制的WebDriver 常用操作 <十> 层级定位
下面将使用WebDriver来模拟操作一个层级定位元素的操作 测试用例场景 在实际的项目测试中,经常会有这样的需求:页面上有很多个属性基本相同的元素,现在需要具体定位到其中的一个.由于属性基本相当,所 ...
- Python脚本控制的WebDriver 常用操作 <十九> 获取测试对象的状态
下面将使用webdriver来模拟测试中观察测试对象的状态的操作 测试用例场景 在web自动化测试中,我们需要获取测试对象的四种状态 是否显示.使用element.is_displayed()方法: ...
- Python脚本控制的WebDriver 常用操作 <十六> 处理对话框
下面将使用webdriver来处理一些页面跳出的对话框事件 测试用例场景 页面上弹出的对话框是自动化测试经常会遇到的一个问题.前端框架的对话框经常是div形式的,下面是一些常见的对话框操作事件: 打开 ...
- Python脚本控制的WebDriver 常用操作 <十五> 处理Navigation Bar
下面将使用WebDriver来模拟操作:选择一个Navigation bar的选项 测试用例场景 Navigation Bar可以看作是简单的类似于tab的导航栏.一般来说导航栏都是ul+li.先定位 ...
- Python脚本控制的WebDriver 常用操作 <十四> 处理button dropdown 的定位
测试用例场景 模拟选择下拉菜单中数据的操作 Python脚本 测试用HTML代码: <html> <body> <form> <select name=&qu ...
- Python脚本控制的WebDriver 常用操作 <十八> 获取测试对象的css属性
测试用例场景 当你的测试用例纠结细枝末节的时候,你就需要通过判断元素的css属性来验证你的操作是否达到了预期的效果.比如你可以通过判断页面上的标题字号以字体来验证页面的显示是否符合预期.当然,这个是强 ...
- Linux 笔记 - 第十五章 MySQL 常用操作和 phpMyAdmin
博客地址:http://www.moonxy.com 一.前言 前面几章介绍了 MySQL 的安装和简单的配置,只会这些还不够,作为 Linux 系统管理员,我们还需要掌握一些基本的操作,以满足日常管 ...
- Spring Boot入门系列(十九)整合mybatis,使用注解实现动态Sql、参数传递等常用操作!
前面介绍了Spring Boot 整合mybatis 使用注解的方式实现数据库操作,介绍了如何自动生成注解版的mapper 和pojo类. 接下来介绍使用mybatis 常用注解以及如何传参数等数据库 ...
随机推荐
- 一文搞懂Kafka的基本原理及使用
Kafka的基本原理及使用 一.基本概念及原理 1.Kafka特点 Kafka 是一个分布式的流式平台,流式平台包括以下三个特点: 发布和订阅消息(流),类似于一个消息队列或企业消息系统 持久化收到的 ...
- 简述电动汽车的发展前景及3D个性化定制需求
李彦宏前几天又搞事,他宣布百度要开始造电动汽车了!百度市值更是因此一夜暴涨了700亿. 这熟悉的配方,好像在乔布斯.库克那里也见过. 苹果的"iCar"(或者是Apple Car) ...
- Leetcode----<Re-Space LCCI>
题解如下: /** * 动态规划解法: * dp[i] 表示 0-i的最小不能被识别的字母个数 * 求 dp[k] 如果第K个字母 不能和前面的字母[0-{k-1}]合在一起被识别 那么dp[k] = ...
- django生成迁移文件和执行迁移的命令
生成迁移文件: python manage.py makemigrations #创建数据库迁移文件 执行迁移: python manage.py migrate # 根据数据库迁移文件生 ...
- centos 7安装zabbix
1 升级系统组件到最新版本 yum -y update 2 关闭 SELinux sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" / ...
- NC224938 加减
NC224938 加减 题目 题目描述 小红拿到了一个长度为 \(n\) 的数组.她每次操作可以让某个数加 \(1\) 或者某个数减 \(1\) . 小红最多能进行 \(k\) 次操作.她希望操作结束 ...
- 【炼丹Trick】EMA的原理与实现
在进行深度学习训练时,同一模型往往可以训练出不同的效果,这就是炼丹这件事的玄学所在.使用一些trick能够让你更容易追上目前SOTA的效果,一些流行的开源代码中已经集成了不少trick,值得学习一番. ...
- Linux挂载webdav
Docker挂载webdav(推荐): docker run -itd \ --name mydav \ --device /dev/fuse \ --cap-add SYS_ADMIN \ --se ...
- shell脚本三剑客:grep、sed、awk
shell脚本三剑客:grep sed awk grep语法: grep [OPTIONS] PATTERN [FILE] 常用选项 -c 统计匹配到的 ...
- 《吐血整理》保姆级系列教程-玩转Fiddler抓包教程(6)-Fiddler状态面板详解
1.简介 按照从上往下,从左往右的计划,今天就轮到介绍和分享Fiddler的状态面板了. 2.状态面板概览 Fiddler的状态面板概览,如下图所示: 3.状态面板详解 Fiddler底端状态栏面板详 ...