grep命令

作用

Linux中一种强大的文件搜索过滤工具,可以按照正则表达式检索文件内容,并把匹配的结果显示到屏幕上(内容会标红)

格式

grep -参数 条件 文件名

参数

  • -i:忽略大小写进行匹配。
  • -c:只打印匹配的行数。
  • -v:反向查找,只打印不匹配的行。
  • -n:显示匹配行的行号。
  • -r:递归查找子目录中的文件。
  • -l:只打印匹配的文件名。
  • -E:等价于egrep,启用正则表达式
  • -w:匹配单词。
  • -o:只显示匹配的内容。
  • -q:静默模式,没有任何内容的输出,使用$?来判断是否执行成功
  • -A数字:匹配行及以下n行
  • -B数字:匹配行及以上n行
  • -C数字:匹配行及以下n行

注意

  • 如果使用grep检索是,条件中包含了空格,需要使用双引号扣起来
  • 如果搜索成功返回0状态码,否则为1状态码

示例

针对/etc/passwd

显示行号 -n

[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

过滤passwd中不能登陆的用户(以/sbin/nologin结尾)


[root@localhost ~]# grep -n "/sbin/nologin" /etc/passwd
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
5:lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
9:mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
10:operator:x:11:0:operator:/root:/sbin/nologin

显示能登陆的用户(-v反向过滤)

[root@localhost ~]# grep -nv "/sbin/nologin" /etc/passwd
1:root:x:0:0:root:/root:/bin/bash
6:sync:x:5:0:sync:/sbin:/bin/sync
7:shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
8:halt:x:7:0:halt:/sbin:/sbin/halt

显示sshd上五行信息

[root@localhost ~]# grep -nB5 "sshd" /etc/passwd
28-systemd-oom:x:984:984:systemd Userspace OOM Killer:/:/usr/sbin/nologin
29-gdm:x:42:42::/var/lib/gdm:/sbin/nologin
30-cockpit-ws:x:983:982:User for cockpit web service:/nonexisting:/sbin/nologin
31-cockpit-wsinstance:x:982:981:User for cockpit-ws instances:/nonexisting:/sbin/nologin
32-gnome-initial-setup:x:981:980::/run/gnome-initial-setup/:/sbin/nologin
33:sshd:x:74:74:Privilege-separated SSH:/usr/share/empty.sshd:/sbin/nologin

显示sshd上下1行

[root@localhost ~]# grep -nC1 "sshd" /etc/passwd
32-gnome-initial-setup:x:981:980::/run/gnome-initial-setup/:/sbin/nologin
33:sshd:x:74:74:Privilege-separated SSH:/usr/share/empty.sshd:/sbin/nologin
34-chrony:x:980:979:chrony system user:/var/lib/chrony:/sbin/nologin
[root@localhost ~]#

统计行数 -c

[root@localhost ~]# grep -nC1 "sshd" /etc/passwd
32-gnome-initial-setup:x:981:980::/run/gnome-initial-setup/:/sbin/nologin
33:sshd:x:74:74:Privilege-separated SSH:/usr/share/empty.sshd:/sbin/nologin
34-chrony:x:980:979:chrony system user:/var/lib/chrony:/sbin/nologin
[root@localhost ~]#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值