Shell grep命令 图片看不了?点击切换HTTP 返回上层
[root@localhost ~]# grep [选项] "搜索内容" 文件名
选项:- -A 数字:列出符合条件的行,并列出后续的 n 行;
- -B 数字:列出符合条件的行,并列出前面的 n 行;
- -c:统计找到的符合条件的字符串的次数;
- -i:忽略大小写;
- -n:输出行号;
- -v:反向査找;
- --color=auto:搜索出的关键字用颜色显示;
举几个例子:
[root@localhost ~]# grep "/bin/bash" /etc/passwd
#查找用户信息文件/etc/passwd中有多少可以登录的用户
root:x:0:0:root:/root:/bin/bash
user1:x:500:500::/home/user1:/bin/bash
user2:x:501:501::/home/user2:/bin/bash
再举几个例子:
[root@localhost ~]# grep -A 3 "root" /etc/passwd
#查找包含"root"的行,并列出后续的3行
root:x:0:0:root:/root:/bin/bash
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
[root@localhost ~]# grep -n "/bin/bash" /etc/passwd
#查找可以登录的用户,并显示行号
1:root:x:0:0:root:/root:/bin/bash
31:user1:x:500:500::/home/user1:/bin/bash 32:user:x:501:501::/home/user:/bin/bash
[root@localhost ~]# grep -v "/bin/bash" /etc/passwd
#查找不包含"/bin/bash"的行,其实就是列出所有的伪用户
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
…省略部分输出…