文本内容查找grep、文件查找find、正则匹配
一、文本内容查找工具 grep
grep egrep (文本过滤) fgrep (不支持正则)
对文本的内容按照指定的匹配模式基于行来进行筛选
格式 grep [选项] 模式 文件
选项:
-v:反向匹配,显示不能被模式匹配到的行
-o:仅匹配被模式匹配到的字符串,而非整行
-q:静默模式
-i:不区分大小写,ignore-case
-E:支持扩展(相当于egrep) grep -E = egrep
根据正则表达式进行匹配查找
1、点 . : 任意单个字符

2、[ ] : 指定[ ]范围内的任意单个字符
[0-9],[[:digit:]] 匹配任意单个数字

[a-z],[[:lower:]] 匹配任意单个小写字母

[A-Z],[[:upper:]] 匹配任意单个大写字母

所有的字母:[[:alpha:]]

字母+数字:[[:alnum:]]

空格:[[:space:]](空格不等同于空行)

标点符号字符:[[:punct:]]

[^]: 指定范围外的任意单个字符

3、次数匹配:用来指定匹配其前面的字符的次数
* : 星号前面的一个字符出现0次或n次

.* : 匹配任意长度的任意字符

\? : 问号前面的一个字符出现0次或者1次 \转义

\+ : 前面字符至少1次 (1次到n次)

\{m\} : 匹配m次

\{m,n\} : 至少m次,至多n次

\{m,\} : 至少m次

\{,n\} : 至少0次,至多n次

4、位置锚定:用于指定字符出现的位置
^ : 锚定行首 ^char

$ : 锚定行尾 char$

^$ : 空白行

5、单词的位置锚定
\<char :锚定单词词首
char\> : 锚定单词词尾

6、egrep:支持扩展正则表示({} , (), ?, +可以不用转义) 等价于:grep -E

二、管道操作
管道:
Linux:
程序=指令+数据
使用目的单一的小程序
组合小程序完成复杂的任务
指令1 | 指令2 | 指令3
| 左边命令的输出作为 | 后边命令的输入
Linux 中不是所有命令都支持管道,不支持管道的命令:cd rm find ...

三、文本内容处理命令 wc, tr, cut, sort
1、wc:即 word count
ctrl+d 提交
行 单词数 字节数
wc[option][file]...
-l:统计行数
-c:统计字节数
-w:统计单词数

2、tr:转换或删除字符,tr ‘集合1’ ‘集合2’,必须使用管道
转换字符:会把第一个字符集的对应转换为第二个字符集中的对应转换

-d:删除出现过的字符集

3、cut:根据指定的分隔符切片,并显示出需要显示的片
-d字符:指定分隔符
-f (field) 数字:指定要显示的字段
单个数字:一个字段
多个离散字段:逗号分隔
多个连续字段:-分隔

4、sort:按字符进行比较
格式 sort[options] FILE
-f:忽略大小写
-n:对数字进行排序
-t:指定分隔符
-k数字:指定分隔后进行排序字段列号
-u:重复的行,只显示一行
-r:倒序排列
例题:查询用户,按照编号从大到小的顺序排列,取编号最大的前5名,列出用户名和编号

四、文件查找---------find命令
①:根据文件名 -name -iname(忽略大小写)

②:根据属主属组查找
-user username 根据属主查找
-group grpname 根据属组查找

可接组合条件 -a而且 -o或者:find /home -user root -a -group root 属主和属组都是root的
③:根据文件类型查找 -type

④根据文件的大小来查找 -size

⑤根据时间戳来查找 -atime -mtime -ctime (单位天,如果按照-mmin)

五、查到后的处理动作
①:打印(默认)
-print 默认
-fls 自定义
把输出结果打印到output.txt中

②:查询属性信息(类似ls -l) -ls

③:删除 -delete

④:后接命令(交互) -ok

⑤:后接命令(不交互) -exec cmd {} \;

六、让find命令支持管道(xargs命令)
find命令不支持管道,但是可以使用xargs命令强行驱动可以使用管道

文本内容查找grep、文件查找find、正则匹配的更多相关文章
- Linux命令(四)之常用文件拷贝/移动,文件解压缩,文件查找等相关的操作
.personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...
- linux下文件查找工具--find
常用的文件查找命令有:which,locate,find 1.which命令 查找二进制数或二进制命令,由PATH给出 2.loacte 特点: 1.非实时,每天在系统上生成数据库,通过数据库查询 2 ...
- 查找大文件 & 索引节点(inode)爆满 解决办法
经常遇到磁盘满或者文件节点满的情况,整理如下 查找大文件 查找超过某个大小的文件, 如1G find . -type f -size +1G 查找文件大小的时候,现实文件属性 find . -type ...
- 怎么编辑PDF文件内容,PDF文件编辑方法
怎样编辑PDF文件内容?这是一个常常困扰我们的问题,工作当中我们经常会收到PDF格式的文件,但有时的文件内容不是我们想要的或者是觉得不合理的需要改掉.但是每次有这样的问题时都没有什么好的解决方法,每次 ...
- linux下的find文件查找命令与grep文件内容查找命令
在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区的. 区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访 ...
- [Linux] find文件查找和grep文件内容查找
在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区别的: (1)find命令:根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时 ...
- 嵌入式开发之命令行---linux下的find文件查找命令与grep文件内容查找命令
在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区的. 区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访 ...
- [转帖]linux下的find文件查找命令与grep文件内容查找命令
linux下的find文件查找命令与grep文件内容查找命令 https://www.cnblogs.com/shileima/p/8431393.html 在使用linux时,经常需要进行文件查找. ...
- linux下批量查找/替换文本内容
一般在本地电脑上批量替换文本有许多工具可以做到,比如sublime text ,但大多服务器上都是无图形界面的,为此收集了几条针对linux命令行 实现批量替换文本内容的命令: 1.批量查找某个目下文 ...
随机推荐
- VS下个人认为比较实用的插件
懒得打字了,直接贴图
- 使用js弹出div刷新时闪烁解决方法
<div style="visibility: hidden"> //弹出div内容 </div>
- mysql 5.7 ERROR 1054(42S22) Unknown column 'password' in ‘field list’ 报错
mysql 忘记密码 报错?ERROR 1054(42S22) Unknown column 'password' in ‘field list’原因:5.7版本下的mysql数据库下已经没有pass ...
- QWidget-控件层级关系
lower() 将控件降低到最底层 raise_() 将控件提升到最上层 label.raise_() a.stackUnder(b) 让a放在b下面 注意:以上操作专指同级控件 ...
- Coursera, Big Data 1, Introduction (week 1/2)
Status: week 2 done. Week 1, 主要讲了大数据的的来源 - 机器产生的数据,人产生的数据(比如社交软件上的update, 一般是unstructed data), 组织产生的 ...
- javascript删除cookie
代码很简单 function deleteCookie (cookieName) { document.cookie = `${cookieName}=; expires=${new Date(0). ...
- git操作手册
git教案链接:https://git-scm.com/book/zh/v2 1.1 起步 - 关于版本控制 于是分布式版本控制系统(Distributed Version Control Syste ...
- mysql案例~非常规操作汇总
一 简介:此文汇总mysql不常见的数据库的操作二 mysql表修改最大自增ID 目的: 修复canal相关问题 语法: alter table a AUTO_INCREMENT=num; 执行速度: ...
- 二进制学习 wsample01a.exe
有趣的二进制学习 wsample01a.exe 这是一个基础的入门小程序,点击运行后发现弹出小框,Hello! Windows 用ida静态分析程序,这一段是程序的主逻辑,也是全部逻辑:) 可以看到程 ...
- php编程 之php基础 表单
1 ,php表单 当处理php表单的时候,php能把来自html页面的表单元素自动变成可供php脚本使用的数据. 比如: <html> <head> <meta char ...