grep
grep 命令 :文本搜索过滤工具
grep [OPTIONS] PATTER [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE]
选项:
--color=auto:对匹配到的文本做色后高亮显示
-i:--ignore-case
-o:进现实匹配到的字符本身
-v:--invert-match 显示不能被模式匹配到的行
-E:支持使用扩展的正则表达式元字符
-q:--quiet --slient :静默模式,即不输出任何信息
“#”代表任意字符
-A #:after,后#行
-B #:beofre 前#行
-C #:context,前后各#行
wc
wc 命令 :文本搜索过滤工具
wc [-clw][--help][--version][文件...]
选项:
-c :--bytes
--chars只是显示Bytes数
-l :--lines显示行数
-w :--words只显示数字
--help 显示帮助
-vsersion 显示版本信息
cut
cut 命令 :显示经过cut(剪切)过的行
cut [-bn] [file]
cut [-c] [file]
cut [-df] [file]
选项:
-c :以字符为单位进行分割
-d :自定义分隔符。默认为制表符。
-f : 与-d一起使用,指定显示哪个区域
-b :以字节为单位进行分割
-n :取消分割多字节字符。和-b一起使用。如果在内容在范围内则输出范围,不在范围内则不输出
【案例】统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来
// 通过grep对数据进行过滤-v作用是取反
[root@Centos7 ~]# cat /etc/passwd | grep -v /sbin/nologin
root:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
syslog:x:996:994::/home/syslog:/bin/false
lighthouse:x:1000:1000::/home/lighthouse:/bin/bash
// 使用wc -l计算非/sbin/nologin路径的用户共有6人 -l代表计算行
[root@Centos7 ~]# cat /etc/passwd | grep -v /sbin/nologin |wc -l
6
// 使用cut -d: -f 1来切割字段查看用户名 -d:作用是使用:来对段落分隔 -f 1是提取第一个分段
[root@Centos7 ~]# cat /etc/passwd | grep -v /sbin/nologin | cut -d: -f 1
root
sync
shutdown
halt
syslog
lighthouse