一、文本内容查找工具 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、正则匹配的更多相关文章

  1. Linux命令(四)之常用文件拷贝/移动,文件解压缩,文件查找等相关的操作

    .personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...

  2. linux下文件查找工具--find

    常用的文件查找命令有:which,locate,find 1.which命令 查找二进制数或二进制命令,由PATH给出 2.loacte 特点: 1.非实时,每天在系统上生成数据库,通过数据库查询 2 ...

  3. 查找大文件 & 索引节点(inode)爆满 解决办法

    经常遇到磁盘满或者文件节点满的情况,整理如下 查找大文件 查找超过某个大小的文件, 如1G find . -type f -size +1G 查找文件大小的时候,现实文件属性 find . -type ...

  4. 怎么编辑PDF文件内容,PDF文件编辑方法

    怎样编辑PDF文件内容?这是一个常常困扰我们的问题,工作当中我们经常会收到PDF格式的文件,但有时的文件内容不是我们想要的或者是觉得不合理的需要改掉.但是每次有这样的问题时都没有什么好的解决方法,每次 ...

  5. linux下的find文件查找命令与grep文件内容查找命令

    在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区的. 区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访 ...

  6. [Linux] find文件查找和grep文件内容查找

    在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区别的: (1)find命令:根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时 ...

  7. 嵌入式开发之命令行---linux下的find文件查找命令与grep文件内容查找命令

    在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区的. 区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访 ...

  8. [转帖]linux下的find文件查找命令与grep文件内容查找命令

    linux下的find文件查找命令与grep文件内容查找命令 https://www.cnblogs.com/shileima/p/8431393.html 在使用linux时,经常需要进行文件查找. ...

  9. linux下批量查找/替换文本内容

    一般在本地电脑上批量替换文本有许多工具可以做到,比如sublime text ,但大多服务器上都是无图形界面的,为此收集了几条针对linux命令行 实现批量替换文本内容的命令: 1.批量查找某个目下文 ...

随机推荐

  1. 简单备份mysql数据库

    对于数据量不大的业务场景,可以每天做全量备份. 实现方式:编写备份数据库脚本,然后在crontab中每天定时执行脚本进行备份. 备份脚本示例: #!/bin/bash #Author: zhangsa ...

  2. C#利用Guid实现真随机数

    C#中的随机数可以利用Random类很简单地生成随机数,代码如下: Random rdmNum=new Random();//生成随机数对象 int ans=rdmNum.Next(a,b);//生成 ...

  3. system.net.webexception远程服务器返回了错误: NotFound。

    Not Found类的错误主要是由于网络服务访问出错.所以需要分析是由哪个网络服务访问失败而导致的. DataAccessSilverlight.PowerDataServiceReference.G ...

  4. 【noip 2014】提高组Day2T3.华容道

    Description 小 B 最近迷上了华容道,可是他总是要花很长的时间才能完成一次.于是,他想到用编程来完成华容道:给定一种局面,华容道是否根本就无法完成,如果能完成,最少需要多少时间. 小 B ...

  5. cocos2dx 动画控制概要

    -------------------------------------------------Cocos2d 播放动画Node : 节点,所有显示容器的基础 Sprite : 使用图片的节点 An ...

  6. 迅为-IMX6开发板十层PCB制造,24小时开机测试,满负荷测试运行俩天,没有死机

    迅为-IMX6开发板——工业主板的优势 1.元器件 IMX6工业主板选料,选用经过长时间.高要求验证元器件,保证产品在复杂条件下,耐高温.抗潮湿等工业场合的需求. 2.PCB设计 IMX6工业主板采用 ...

  7. luogu P4183 [USACO18JAN]Cow at Large P

    传送门 首先考虑N^2做法,每次从一个点出发,如果到达一个点,然后到达这个点的时间\(\le\)离这个点最近的叶子距离\(di_x\),那么答案+1,否则继续找点 这个暴力很不好优化.可以这样认为,如 ...

  8. 牛客寒假训练营3 B 处女座的比赛资格(拓扑排序+最短路)

    题目链接 这个题,一眼看上去就是最短路的题,边权有负环显然不能用dij,然后出题人又卡了spfa,,那怎么办的想点办法啊,好像还有一个拓扑排序可以求最短路吧,这时候正解就已经得到了,就是拓扑排序求最短 ...

  9. Python非空即真,非零即真

    非空即真,非零即真 #1. 非空即真(只要输入不为空就是真) #username =''(空字典.空字符串.空元组都算空) # a= '' # b=[] # c={} # d=None (返回值是No ...

  10. ES6 基础

    转载自:ES6 基础 一.新的变量声明方式 let/const 与var不同,新的变量声明方式带来了一些不一样的特性,其中最重要的两个特性就是提供了块级作用域与不再具备变量提升. 通过2个简单的例子来 ...