一、命令详解
grep命令时一个强大的文本搜索命令。
1、命令格式
- grep [参数] [关键字] <文件名>
grep在过滤某个文件内容时后面需要跟文件名的,但是如果使用"|",后面不需要文件名。
2、参数
- -c 只输出匹配行的数量
- -n 显示匹配行及行号
- -v 显示不包含匹配行的文本内容
更多内容通过man grep进行查看。
二、实战
1、文件内容
[root@localhost thrid_dir]# cat grep_example.txt aa AA aa BB cc CC dd DD
2、参数实例
[root@localhost thrid_dir]# grep -c aa grep_example.txt 2 [root@localhost thrid_dir]# grep -n aa grep_example.txt 1:aa AA 2:aa BB [root@localhost thrid_dir]# grep -v aa grep_example.txt cc CC dd DD [root@localhost thrid_dir]# grep -vn aa grep_example.txt 3:cc CC 4:dd DD
三、扩展
1、命令参数扩展
- -r 递归查找
- -i 忽略大小写
# 递归查找文件内容 [root@localhost thrid_dir]# grep -nr aa /project/thrid_dir /project/thrid_dir/grep_example.txt:1:aa AA /project/thrid_dir/grep_example.txt:2:aa BB # 忽略大小写 [root@localhost thrid_dir]# grep -nri aa /project/thrid_dir /project/thrid_dir/grep_example.txt:1:aa AA /project/thrid_dir/grep_example.txt:2:aa BB
2、egrep
egrep是grep命令的扩展,它可以识别正则,基于正则进行内容匹配。
# 过滤出文件中以a开头的行内容 [root@localhost thrid_dir]# egrep '^a.*' grep_example.txt aa AA aa BB