Linux文件系统---grep命令

grep命令

        grep(Globel Search Regular expression and Printing out the line)是一种强大的文本搜索工具,是一个对进行操作的搜索工作,它能使用正则表达式搜索文本,并把匹配的行打印出来。Unix的grep家族包括grep、egrep和fgrep。egrep表示扩展的grep,相比grep支持更多的元字符,“grep-E”相当于egrep。grep搜索的结果被送到屏幕,不影响原文件内容。

1、命令功能

        用于 过滤 / 搜索 特定字符

2、命令格式

        grep [ options ] [pattern] [file ...]

        grep 【选项】【查找内容】 【查找内容的文件】

3、基本参数

参数作用
- A打印匹配到行之后的n行 (后加数字)
- B打印匹配到行之前的n行 (后加数字)
- C打印匹配到行之前后的n行(后见数字)
- E开启正则表达式的扩展模式
- i忽略字母大小写
- n显示行数并打印
- v反向查找过滤
- r递归查找目录
- o只输出匹配到的内容
- w精确匹配某个单词

4、grep指令的运用

        显示 /etc/passwd 文件中以 root 开头的行

[root@localhost /]# grep '^root' /etc/passwd

root:x:0:0:root:/root:/bin/bash


        显示 /etc/passwd 文件中以 /bin/nologin结尾的行

[root@localhost etc]# grep '/sbin/nologin$' /etc/passwd

bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
...

           显示 /etc/passwd 文件中含有 root 的行

[root@localhost etc]# grep 'root' /etc/passwd

root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin

        显示 /etc/passwd 文件中含有root行的行数

[root@localhost /]# grep -n 'root' etc/passwd

1:root:x:0:0:root:/root:/bin/bash
10:operator:x:11:0:operator:/root:/sbin/nologin

        显示 /etc/passwd文件中含有root行以及后三行

[root@localhost /]# grep -nA 3 'root' etc/passwd

1:root:x:0:0:root:/root:/bin/bash
2-bin:x:1:1:bin:/bin:/sbin/nologin
3-daemon:x:2:2:daemon:/sbin:/sbin/nologin
4-adm:x:3:4:adm:/var/adm:/sbin/nologin
--
10:operator:x:11:0:operator:/root:/sbin/nologin
11-games:x:12:100:games:/usr/games:/sbin/nologin
12-ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
13-nobody:x:99:99:Nobody:/:/sbin/nologin

        显示 /etc/passwd文件中含有root行以及前三行(第一次出现root为第一行,故前面无行)

[root@localhost /]# grep -nB 3 'root' etc/passwd

1:root:x:0:0:root:/root:/bin/bash
--
7-shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
8-halt:x:7:0:halt:/sbin:/sbin/halt
9-mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
10:operator:x:11:0:operator:/root:/sbin/nologin

         显示 /etc/passwd文件中含有root行以及前后三行

[root@localhost /]# grep -nC 3 'root' etc/passwd

1:root:x:0:0:root:/root:/bin/bash
2-bin:x:1:1:bin:/bin:/sbin/nologin
3-daemon:x:2:2:daemon:/sbin:/sbin/nologin
4-adm:x:3:4:adm:/var/adm:/sbin/nologin
--
7-shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
8-halt:x:7:0:halt:/sbin:/sbin/halt
9-mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
10:operator:x:11:0:operator:/root:/sbin/nologin
11-games:x:12:100:games:/usr/games:/sbin/nologin
12-ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
13-nobody:x:99:99:Nobody:/:/sbin/nologin

        显示/etc/passwd 文件中以大小G 开头的行

[root@localhost /]# grep -i '^G' /etc/passwd

games:x:12:100:games:/usr/games:/sbin/nologin
gluster:x:995:992:GlusterFS daemons:/run/gluster:/sbin/nologin
geoclue:x:989:983:User for geoclue:/var/lib/geoclue:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:988:982::/run/gnome-initial-setup/:/sbin/nologin

        输出/etc/passwd 文件中的root

[root@localhost /]# grep -o 'root' /etc/passwd

root
root
root
root

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值