grep是工作用到最多的命令,绝对是linux下的利器,这里总结一下
用法:grep -[acinv] '搜索内容串' filename
-a 以文本文件方式搜索
-c 计算找到的符合行的次数
-i 忽略大小写
-n 输出行号
-v 反向选择,即找 没有‘搜索字符串’的行
搜索串可以是正则表达式。
1、输出行号,带‘name’和不带'name'的行
➜ my-web grep -n 'name' test.log ➜ my-web grep -nv 'name' test.log
2、利用[]搜索集合字符,[]表示其中的某一个字符
➜ my-web grep '[mn]i' test.log name=jack,nike #name=mike
3、可以用^符号做[]内的前缀,表示除[]内的字符之外的字符
➜ my-web grep '[^n]' test.log #奇怪,把所有行输出了 tbbbbbbb name=1234 name=jack,nike #name=mike age=24下面2种方式都ok!!
➜ my-web grep -v '[n]' test.log tbbbbbbb age=24
➜ my-web grep '[^n]i' test.log #name=mike
4、 [] 内可以用范围表示,比如[a-z] 表示小写字母,[0-9] 表示0~9的数字, [A-Z]则是大写字母
➜ my-web grep '[0-9]' test.log name=1234 age=24 ➜ my-web grep '[a-z]' test.log
5、行首与行尾字符 ^ $. ^ 表示行的开头,$表示行的结尾( 不是字符,是位置)那么‘^$' 就表示空行,因为只有 行首和行尾。 这里^与[]里面使用的^意义不同。它表示^后面的串是在行的开头。
➜ my-web grep '^name' test.log name=1234 name=jack,nike
➜ my-web grep '^[a-z]' test.log tbbbbbbb name=1234 name=jack,nike age=24
#搜索开头不是小写英文字母的行 ➜ my-web grep '^[^a-z]' test.log #name=mike --------------------------------------
6、$表示它前面的串是在行的结尾,比如 '\.' 表示 . 在一行的结尾,.是正则表达式的特殊符号,所以要用\转义
➜ my-web grep 'e$' test.log name=jack,nike #name=mike ➜ my-web grep -n '^$' test.log 5: ➜ my-web grep -nv '^$' test.log 1:tbbbbbbb 2:name=1234 3:name=jack,nike 4:#name=mike 6:age=24 7:
7、正则表达式中,*表示有0个或多个某个字符,.代表一个任意字符
➜ my-web grep 'm..e' test.log #name=mike ➜ my-web grep 'tbbb*' test.log tbbbbbbb
8、限定连续重复字符的范围 { } ,范围是数字用,隔开 2,5 表示2~5个, 2表示2个,2, 表示2到更多个 注意,由于
{ }在SHELL中有特殊意义,因此作为正则表达式用的时候要用\转义一下
➜ my-web grep 'tb\{5,\}' test.log tbbbbbbb
9、egrep扩展正则表达式,其实 egrep 是 grep -E 的别名而已。因此grep -E 支持扩展正则。这里| 表示或的关系,+于 . * 作用类似,表示一个或多个重复字符。 ?于 . * 作用类似,表示0个或一个字符。()将部分内容合成一个单元组。
➜ my-web egrep '^t|^#' test.log tbbbbbbb #name=mike
10、fgrep、egrep、grep区别:
gerp Search a Pattern from current directory.
egrep (grep -E in linux) is extended grep where additional regular expression metacharacters have been added like +, ?, | and ().
fgrep (grep -F in linux) is fixed or fast grep and behaves as grep but does not recognise any regular expression metacharacters as being special.
11、grep 搜索jar包里包含名称的文件,并列出jar包,用于排查类冲突
[xxx@yyyy lib]$ grep -r RequestParser . Binary file ./aaa-4.0.13-SNAPSHOT.jar matches
相关推荐
这个压缩包“linux-grep-命令-详解.zip”包含了一份详细文档“linux-grep-基本用法及高级技巧.doc”,将深入解析grep命令的各个方面。下面,我们将根据文档内容,对grep命令进行详细介绍。 grep,顾名思义,“g/re/...
Linux 基础 38-文件内容命令-03-grep查找文件内容.flv
Linux 基础 39-文件内容命令-04-grep行首/行尾的模式查找.flv
这些工具集不仅包含了类似于“grep”的命令,还提供了许多其他Linux命令的实现。 “grep”命令在Linux中用于在文件中搜索特定的文本模式。它的基本语法是`grep [选项] 模式 [文件]`,其中选项可以设定搜索行为,如 ...
grep 命令是 Linux 系统中最常用的文本处理工具之一,它可以根据用户指定的模式对目标文本逐行进行匹配检查,并打印匹配到的行。grep 命令的格式为:grep [OPTIONS] PATTERN [FILE...] 其中,OPTIONS 是可选参数,...
### Linux 下 `grep` 命令详解 `grep` 是 Linux 下一款强大的文本搜索工具,可以在文件中搜索固定字符串或者使用正则表达式搜索,是日常开发、运维工作中非常实用的一个命令。本文将详细介绍 `grep` 的常用选项及其...
grep命令是Linux系统中非常重要的文本搜索工具,它可以对文件中的内容进行搜索,并根据用户的搜索模式,显示出包含该模式的行。grep是Global Regular Expression Print的缩写,它支持POSIX基本正则表达式和扩展正则...
【fs-grep】是一个专为前端开发者设计的开源库,其灵感来源于经典的Linux命令`grep`,用于在文件系统中快速查找包含特定文本内容的文件。这个库将强大的搜索功能带到了前端环境中,使得在浏览器端处理大量文本数据时...
接下来,我们详细解析文档中提到的Linux命令和功能: 1. 启动和关闭系统 - `#startx`:启动图形界面。 - `#logout`:注销当前用户。 - `#init 5`:切换到多用户图形界面模式。 - `#init 3`:切换到多用户命令行...
**Linux `ps` 命令详解** 在Linux操作系统中,`ps`(Process Status)命令是用于查看系统当前进程状态的工具。它能够显示进程的实时信息,帮助用户了解系统的运行情况,进行进程管理。`ps`命令历史悠久,功能强大,...
`grep`命令就是这样一个强大的工具,它能帮助我们快速定位文本文件中的特定字符串或模式。本资源“Linux-系统随你玩之-grep查找文件内容-fyydlz.zip”包含了关于如何使用`grep`进行文本搜索的示例文件——fyydlz.txt...
大数据基础-Linux基础详解课程
Linux中的grep命令是一个非常强大的文本搜索工具,用于搜索文件中符合特定模式的字符串。以下是对文档中grep命令相关知识点的详细说明: 1. grep命令的结构和基本用法 grep的基本语法是:grep [options] pattern ...
### Linux中的Grep命令详解 在深入探讨Grep命令之前,我们先来了解其基本概念。Grep(Global Regular Expression Print)是Linux中一个功能强大的文本搜索工具,它能够使用正则表达式来搜索文本,并将匹配的行打印...
"Linux常用命令和管理03-grep及正则表达式1" 本文将详细介绍 Linux 中的 grep 命令和正则表达式的使用,涵盖变量类别、Bash 配置文件、计算机理解、编程语言、Bash 编程、文件搜索、grep 命令、正则表达式、基本...
### Linux中的`grep`命令参数及用法详解 `grep`是Linux系统中非常重要的文本搜索工具之一,它能够帮助用户高效地查找文件中的特定模式或字符串。`grep`不仅适用于简单的文本匹配,还能处理复杂的正则表达式,是进行...
Linux命令是Linux操作系统中进行系统管理、文件操作和任务执行的基本工具。这些命令通常通过终端或控制台输入,使得用户可以与系统交互,执行各种任务,而无需图形化界面。在移动设备上,如Android手机,也可以安装...
Linux中的`grep`命令是文本处理工具中的重要一员,它在系统管理和日常工作中发挥着巨大的作用。`grep`源自于“global regular expression print”,即全局正则表达式打印,它的主要功能是从输入流(通常是文件或管道...
根据给定文件的信息,我们可以详细地探讨Linux中的grep命令及其扩展正则表达式的使用方法,特别是针对提供的几个示例。 ### 扩展正则表达式基础 #### 字符匹配 在扩展正则表达式中,有几种常用的字符匹配方式: 1....