#Linux杂记# grep 查找命令常用选项大全(一)
创始人
2024-04-21 08:55:09
0

今天,难得好天气,过去阴雨绵绵几天,确实干什么都没多少心劲。 

对于Linux 指令,其实工作中用的也就那么多,但是真正用的很6的,确实给我们工作效率带来极大提高。


-i:在搜索的时候忽略大小写。

例子1: grep "Test start" -i  filename // 当前指定文件名字

例子2: grep "Test start" -i  test/filename // 当前目录下的某个目录的文件

例子3: grep "Test start" -i  *              // 当前目录下的所有文件


 -r:递归搜索路径。如果想查找当前目前以及其子目录的全部文件时,可以使用 -r 选项。

例子1: grep "Test start"  -r  *              // 当前目录下的所有文件及其子目录

例子2: grep "Test start"  -r              // 当前目录下的所有文件及子目录


-n:显示结果所在行号。

例子1: grep "Test start" -n  filename // 当前指定文件名字

例子2: grep "Test start" -n test/filename // 当前目录下的某个目录的文件

例子3: grep "Test start" -n  *              // 当前目录下的所有文件


 -c:统计匹配到的行数。

注意,是匹配到的总行数,不是匹配到的次数。统计某个文件中匹配到的行数,总行数,不是每一行匹配到的次数。

grep  "Test start"  -inc *


-o:只显示符合条件的字符串。

但是不整行显示,每个符合条件的字符串单独显示一行。

[my_basic_helloworld_1]grep  "Test start"  -in grep.log -o


 -v:输出不带关键字的行(反向匹配)。

[my_basic_helloworld_1]grep  "Test start"  -in grep.log -o -v


 -w:匹配整个单词。

如果是字符串中包含这个单词,则不作匹配。

grep  "Test start"  -in grep.log -o -w

[my_basic_helloworld_1]grep  "Test start"  -in grep.log -o -w

输出结果:
4:test start  // 只显示第四行的匹配结果。


-Ax:在输出的时候包含结果所在行之后的指定行数。

这里指之后的x行,A:after

-Bx:在输出的时候包含结果所在行之前的指定行数。

这里指之前的x行,B:before

-Cx:在输出的时候包含结果所在行之前和之后的指定行数。

这里指之前和之后的x行,C:context(上下文的意思)


-e:实现多个选项的匹配,逻辑or关系。

grep  -e "Test"  -e  "start"  -in  *.log


 -x: 只显示全列符合的列。


-E:使用扩展正则表达式,而不是基本正则表达式,在使用”-E”选项时,相当于使用egrep。

格式:grep "REGEX" filename

如果你能有效地利用正则表达式,这是个很有用的特点。在下面的例子中,搜索全部以“lines”开始以“empty”结束的字串,如搜索“lines[之间任意字]empty” ,并且忽略大小写。

正则表达式遵循的几个重复的操作:

  • ? 最多匹配一次
  • * 匹配零次或者任意多次
  • + 匹配一次以上
  • {n} 匹配n次
  • {n,} 最少匹配n次
  • {,m} 最多匹配m次
  • {n,m} 匹配n到m次

^ : 匹配正则表达式的以“某字符串”开头的行。

grep  "^Test start"  -in  *  // 开头匹配


 $ : 匹配正则表达式的以“某字符串”结尾的行。

grep  "Test start$"  -in  *   // 结尾匹配


完结。

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...