linux 搜索文件内容 包含某个单词,grep命令 查找包含某内容的文件
作用
Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。
grep家族包括grep、egrep和fgrep。egrep和fgrep的命令只跟grep有很小不同。egrep是grep的扩展,支持更多的re元字符, fgrep就是fixed grep或fast grep,它们把所有的字母都看作单词,也就是说,正则表达式中的元字符表示回其自身的字面意义,不再特殊。linux使用GNU版本的grep。它功能更强,可以通过-G、-E、-F命令行选项来使用egrep和fgrep的功能。
格式及主要参数
grep [options]
主要参数: grep --help可查看
-c:只输出匹配行的计数。
-i:不区分大小写。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及 行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
--color=auto :可以将找到的关键词部分加上颜色的显示。
pattern正则表达式主要参数:
\: 忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。
$: 匹配正则表达式的结束行。
\
\>:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求 。
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
.:所有的单个字符。
*:所有字符,长度可以为0。
实例
显示所有以d开头的文件中包含 test的行
grep 'test' d*
显示在aa,bb,cc文件中匹配test的行
grep 'test' aa bb cc
显示所有包含每个字符串至少有5个连续小写字符的字符串的行
grep '[a-z]\{5\}' aa
\表示转义字符
grep命令使用复杂实例
明确要求搜索子目录:
grep -r
或忽略子目录
grep -d skip
如果有很多输出时,您可以通过管道将其转到’less’上阅读:
itcast$ grep magic /usr/src/Linux/Documentation/* | less
这样,您就可以更方便地阅读。
有一点要注意,您必需提供一个文件过滤方式(搜索全部文件的话用 *)。如果您忘了,’grep’会一直等着,直到该程序被中断。如果您遇到了这样的情况,按 ,然后再试。
下面还有一些有意思的命令行参数:
grep -i pattern files :不区分大小写地搜索。默认情况区分大小写,
grep -l pattern files :只列出匹配的文件名,
grep -L pattern files :列出不匹配的文件名,
grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’),
grep -C number pattern files :匹配的上下文分别显示[number]行,
grep pattern1 | pattern2 files :显示匹配 pattern1 或 pattern2 的行,
例如:grep "abc\|xyz" testfile 表示过滤包含abc或xyz的行
grep pattern1 files | grep pattern2 :显示既匹配 pattern1 又匹配 pattern2 的行。
grep -n pattern files 即可显示行号信息
grep -c pattern files 即可查找总行数
还有些用于搜索的特殊符号:\< 和 \> 分别标注单词的开始与结尾。
例如:
grep man * 会匹配 ‘Batman’、’manic’、’man’等,
grep ‘\
grep ‘\’ 只匹配’man’,而不是’Batman’或’manic’等其他的字符串。
linux 搜索文件内容 包含某个单词,grep命令 查找包含某内容的文件相关推荐
- Grep命令查找多个字符串(grep同时匹配多个关键字或任意关键字)
前言 grep 命令支持三种正则表达式语法:Basic.Extended 和 Perl-compatible .当没有指定正则表达式类型时,grep 命令将搜索模式默认为基本正则表达式. 要搜索多个匹 ...
- centos在文本中搜索字符串_linux(centos8):用grep命令查找文件内容
一,grep的用途: linux平台有最常用的三大文本处理工具:awk/sed/grep grep的功能:搜索指定文件的内容,按照指定的模式匹配,并输出匹配内容所在的行. 需要注意的地方:grep只支 ...
- 【Linux】使用grep命令查找文件内容
文章目录 grep简介 grep语法 grep常用选项 示例 模式匹配 grep命令使用简单实例 grep命令使用复杂实例 cat/more/tail 与 grep组合使用 grep简介 grep是l ...
- [linux命令]查找包含指定内容的文件
内容查找.查找内容.查找包含指定内容的文件 文章目录 格式1:grep -r "指定内容" 目录 格式2:grep -r -l "指定内容" 目录 格式3:fi ...
- linux命令 查找包含指定字符串的文件
1.非递归搜索包含指定字符串的文件 grep 查找在当前目录下,包含mirrors.aliyuncs.com字符串的文件 grep mirrors.aliyuncs.com ./* 查找结果: 2.递 ...
- Linux下,文件权限UGO,ls -l命令的详细查看内容,修改文件文件夹属主属组的命令
Linux下,用户权限UGO 注意: 1.Linux中的对象都有基本权限UGO,ugo分别表示user,group,other, 2.这里的对象是对文件和文件夹的简写,不是编程语言中的对象概念. 一. ...
- linux中grep命令查找目录下,linux中查找grep与find命令的使用
在日常工作中,我们常常会在自己的电脑寻找某些不知道放在哪里的私密文件,通常我们会在资源管理器的搜索栏里输入一些关键字去帮助我们快速去定位查找该文件.在linux系统中也有这样的功能,只不过在linux ...
- linux命令——查找文件大小大于1M的文件
查找当前目录下文件大小大于1M的文件:find ./ -type f -size +1M ./当前路径 -type 文件类型 -size 文件大小 +大于 -小于 无 等于 查看当前路径:pwd ...
- linux grep -11,11个高级Linux字符类和括号表达式的grep命令
你是否曾经在你需要的一种局面搜索字符串,文字或图案的文件里面呢? 如果是,那么grep工具来在这样的情况下派上用场. grep的是为其匹配一个正则表达式搜索行纯文本数据的命令行实用程序. 如果您将分词 ...
最新文章
- connect() failed (111: Connection refused) while connecting to upstream, cli
- 7.html超链接的使用
- hdu1597(二分)
- Entity Framework 4.1(转)
- [论文阅读] (06) 万字详解什么是生成对抗网络GAN?经典论文及案例普及
- 在所有linux版本安装oracle9i
- InfoWorld 公布开源软件( 2019 年)
- golang语言示例:--->下载网站的json文件,同时对文件进行分析输出
- Atitit 管理体制 编号制 1.数字编码有何好处 数字编码有何好处 1、归档整理方便,特别在电子管理系统中; 2、数字编码更容易进行管理,无论谁进行的编码都是一样,管理方便,人员无论怎么换,程序
- 2021国内地址数据库表mysql
- Win10注册DLL办法
- 程序员使用谷歌搜索的十种技巧
- 调用快递鸟API查询物流
- leetcode 1859 又是一道字符串分隔的题目
- PDF文件如何转换成png图片
- 论文机翻:Res2Net: A New Multi-scale Backbone Architecture(Res2Net 论文机翻)
- VMware虚拟机无网络
- oracle开机自启
- CentOS7系统root分区文件损坏修复的解决方法
- 汇编指令及其英文全称