Linux下如何通过grep命令查找文件内容,有什么有用的参数
Admin 2022-06-23 群英技术资讯 628 次浏览
在linux中,可以使用“grep 查找内容 文件”命令来简单查找文件内容;如果想要忽略大小写,则可使用“grep -i 查找内容 文件”命令;如果想搜索目录里所有文件,且结果中显示行号,则可使用“grep -nr 查找内容 *”命令。
本教程操作环境:Red Hat Enterprise Linux 6.1系统、Dell G3电脑。
Linux查找文件内容(grep)
grep是Linux命令行下常用于查找过滤文本文件内容的命令。最简单的用法是:
grep 查找内容 文件
如果想忽略大小写,可以用-i参数:
grep -i 查找内容 文件
如果想搜索目录里所有文件,包括子目录的话,并且在结果中显示行号,可以用以下命令:
grep -nr 查找内容 *
grep的语法支持正则表达式,正则表达式有些复杂,以后再讲解。下面是一些有用的参数:
-A num, --after-context=num: 在结果中同时输出匹配行之后的num行
-B num, --before-context=num: 在结果中同时输出匹配行之前的num行,有时候我们需要显示几行上下文。
-i, --ignore-case: 忽略大小写
-n, --line-number: 显示行号
-R, -r, --recursive: 递归搜索子目录
-v, --invert-match: 输出没有匹配的行
我们可以通过管道操作来让grep变得更强大,管道操作就是把前面一条命令的输出作为后面一条命令的输入,从而把很多简单的命令组合起来完成复杂的功能。例如,如果我们想查找包含apple的行,但又想过滤掉pineapple,可以用下面的命令:
grep apple fruitlist.txt | grep -v pineapple
如果我们想把搜索结果保存起来,那么可以把命令的标准输出重定向到文件:
grep apple fruitlist.txt | grep -v pineapple > apples.txt
重定向符号>和管道操作符号|的区别是,重定向后面接的是一个文件,它后面不能再接任何文件或命令了;而管道操作后面接的是命令,可以无限地接下去。如果想以追加方式写到文件,可以用>>。管道操作是Linux命令行的一种哲学,它是计算机技术中少有的能沿用几十年的技术之一。通过管道操作,一行命令可以完成Windows下上千行程序也不能完成的文本处理功能。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
linux查看登录日志的方法:直接执行【last -f /var/log/wtmp】命令即可。该日志文件永久记录每个用户登录、注销及系统的启动、停机事件,通过last命令访问该文件就可以获得这些信息。
centos7搭建mongodb3.4.6集群
linux cp命令主要用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中;若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。
在linux中,文件路径里的“.”是“当前目录”的意思,若目录名以“.”开头则表示该目录是隐藏的;例如“./文件名”表示当前目录中有个指定的文件,“..”表示当前目录的上一层目录。
在linux中,组密码是组管理员的密码,加密后的组密码默认保存在“/etc/gshadow”文件中。组密码可以使用gpasswd命令进行设置或移除,只需执行“gpasswd 组名”命令进入组密码设置模式,输入两次密码即可;而执行“gpasswd -r 组名”命令可移除群组的密码,执行“gpasswd -R 组名”命令让群组的密码失效。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008