Linux-Grep命令详解

一、基础的grep命令

1.1 -A -B -C参数的使用

命令格式:grep -A m “关键字” xxxx(文件)
显示出关键字所在行以及关键字所在的以下m行内容
[root@localhost ~]# grep -A 10 “game” /etc/passwd #搜索出关键字“game” 并打印出关键字所在的行以及关键字以下10行

在这里插入图片描述

命令格式:grep -B m “关键字” xxxx(文件)
显示出关键字所在行以及关键字所在的以上m行内容

[root@localhost ~]# grep -B 6 “sync” /etc/passwd #搜索出关键字“sync”并打印出关键字所在行以及关键字以上6行
在这里插入图片描述

只显示了之上5行说明再其上只有5行了;

命令格式:grep -C m “关键字” xxxx(文件)
显示出关键字所在行以及关键字所在的上下m行内容
[root@localhost ~]# grep -C 6 “sync” /etc/passwd #搜索出关键字“sync”并打印出关键字所在行以及关键字的上下6行
在这里插入图片描述

[root@localhost ~]# grep “xiaohua” /etc/passwd /etc/shadow /etc/group /etc/gshadow
在多个文件上查找关键字

在这里插入图片描述

1.2 -l 参数的使用

命令格式:grep -l “关键字” xxxx(文件)
只显示包含关键字的文件名
在这里插入图片描述

在一堆文件中寻找;不能在目录中寻找;

1.3 -n 参数的使用

命令格式:grep -n “关键字” xxxx(文件)
显示出关键字所处文件中的行号

[root@localhost ~]# grep -n “xiaohua” /etc/passwd /etc/shadow /etc/group /etc/gshadow
在这里插入图片描述

[root@localhost ~]# grep "xiaowang" /etc/passwd | sed 's/xiaogang/xiaowang/g' #查找出文件的关键字的信息并作出相应的替换 
xiaowang : x:503:503::/home/xiaowang:/bin/bash  
 's/xiaogang/xiaowang/g' #Linux正则表达式  s表示行数例如10s,100s,单独一个s说明说有的行;  用xiaogang去替换xiaowang   g 表示结束
[root@localhost ~]# ls />1.txt && cat 1.txt |grep "etc"  #采用grep组合命令查找是否有etc的目录 
ls /  (查看”/“目录下的文件)  >1.txt(重定向到1.txt) &&(并且) cat 1.txt(查看1.txt) |(管道符)grep "etc"(查找etc)

1.4 awk命令与grep命令组合

awk命令主要用来查找文件的列,具体请看Linux-awk命令详解
[root@localhost ~]# awk -F : ‘{print $1}’ /etc/passwd #查找/etc/passwd 中以:为分隔的第一列;
在这里插入图片描述

[root@localhost ~]# df -h | awk ‘{print $1 " " $2}’ #df -h 查看磁盘使用情况 并输出第一列和第二列
在这里插入图片描述

[root@localhost ~]# ifconfig | grep Bcast | awk ‘{print $2}’|awk -F : ‘{print $2}’ #查看ip 地址信息
在这里插入图片描述

1.5 -v 参数的使用

命令格式:grep -v “关键字” xxxx (文件)
过滤掉文件中含有关键字的行
[root@localhost ~]# grep -v “nologin” /etc/passwd >grep-v.txt && cat grep-v.txt #过滤掉”nilogin“
在这里插入图片描述

[root@localhost ~]# grep -v “nologin” /etc/passwd |sed ‘s/x/xxx/g’ >grep-v.txt && cat grep-v.txt #把x替换成xxx
在这里插入图片描述

1.6 ^参数的使用

命令格式: grep “^关键字” xxxx(文件名)
== 找出并显示以关键字开头的文件信息==
[root@localhost ~]# grep “^user” /etc/passwd #输出文件信息中以’‘user’'开头的内容
在这里插入图片描述

1.7 $ 参数的使用

==命令格式:grep “关键字KaTeX parse error: Expected 'EOF', got '#' at position 54: …ot@localhost ~]#̲ grep "nologin” /etc/passwd #输出文档信息中以nologin结尾的内容
在这里插入图片描述

1.8 ^$参数的使用

命令格式: grep -v “^$” xxxx(文件名)
输出文件信息时过滤掉空行
在这里插入图片描述

1.9 -r 参数的使用

命令格式: grep -r -n “关键字” xxxx(文件名)
==递归查询只要包含关键字的信息都能被查询出 ==
1597374551301.png

1.10 -i参数的使用

命令格式: grep -i “关键字” xxxx(文件)
在查看文件时,可以忽略关键字是否大写
在这里插入图片描述

1.11 -e参数的使用

命令格式: grep -e “关键字” xxxx(文件)
在查看文件时,可以多个关键字共同进行查找
在这里插入图片描述
可以与-v同时使用;用来过滤掉更多关键字;

1.12 -f参数的使用

命令格式: grep -f xxxx(文件1) xxxx(文件2)
在查找时,以文件1中的内容为指定关键字进行查找
在这里插入图片描述

1.13 -c 参数的使用

命令格式: grep -c “关键字” xxxx(文件)
查找出包含关键字的信息后显示的是含有关键字的行数
在这里插入图片描述

二、grep 命令结合正则表达式进行综合使用

2.1 "."参数的使用

. :效果匹配一个任意的非换行符字符
在这里插入图片描述

2.2 ” * “参数的使用

” * “ :效果匹配0个或多个信息
例如a* :表示含有0个a或多个a
aa* :表示含有一个a或多个a
在这里插入图片描述

2.3 [] 参数的使用

#: 匹配一个指定范围内的字符
在这里插入图片描述

a-z :所有小写字母
0-9:所有数字
^[A-Z]:所有大写字母开头
a-zA-Z:所有字母
[^abc]:匹配不包含^后的任意字符,是对[abc]的取反

2.4 grep 命令结合脚本修改配置文件

在这里插入图片描述

0-9:所有数字
^ [ A-Z]:所有大写字母开头
a-zA-Z:所有字母
[ ^ abc]:匹配不包含^后的任意字符,是对[abc]的取反

  • 4
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值