Linux 常用命令 grep

2023年 7月 28日 48.6k 0

大家好,我是云炬学长。基于目前很多企业都在使用 Linux 操作系统,掌握 Linux 命令行已经成为运维人必备的基础知识和技能,学习命令是为了更好地解决问题。

上一篇分享了运维中遇到的问题及解决办法,这次分享 Linux 的常用基础命令 grep 。

grep 查找文件中符合条件的字符串,与 sed、awk 组成 Linux 的三剑客,语法格式:grep [选项] 关键字 文件名

关键字加引号(单引号,双引号),不加引号的区别

关键字加引号,关键字会被看成一个整体,可以包含空格或特殊字符
1)单引号
如果关键字包含特殊字符($ 和 ' 除外),使用单引号会对特殊字符转义,进行完全匹配搜索
2)双引号
关键字即使包含特殊符号,使用双引号原样输出
3)不加引号
搜索包含关键字中任意单词的文本行

一、打印包含关键字的行

语法格式:grep "关键字" 文件名

查找包含关键字 root 的行,并显示出来

二、打印以某关键字开头的行

语法格式:grep "^关键字" 文件名

在关键字前面加 ^ 号,表示搜索以关键字开头的行

三、打印某关键字结尾的行

语法格式:grep "关键字$" 文件名

在关键字后面加上 $ 符号,表示查找以关键字结尾的行

四、不区分大小写打印关键字的行

语法格式:grep -i "关键字" 文件名

打印包含 root 的行,可以是 Root ,ROOT 等等

五、打印关键字并显示行号

语法格式:grep -n "关键字" 文件名

在文件 test.txt 中查找关键字的同时,并且显示行号

六、递归搜索关键字

语法格式:grep -r 关键字

搜索所有的文件及子目录,包含关键字的行

grep -r "root" /home/back

七、统计匹配某关键字的次数

语法格式:grep -c "关键字" 文件名

统计包含 root 的行数

八、过滤空白行

固定的语法格式: grep -v "^$" 文件名

先输出所有内容,然后键入命令对比后,更好展示

九、查找包含多个关键字的行

语法格式:grep -E "关键字1|关键字2" 文件名

查找包含 root 或者 sync 的行

grep -E "root|sync" test.txt

这里使用了 Linux 正则表达式,Linux 正则表达式常用元字符如下

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论