linux grep


grep

linux 三剑客之一,文本过滤器(根据文本内容过滤文件)

语法格式:
	grep [参数] [匹配规则] [操作对象]
	
参数:
	-n : 过滤文本时,将过滤出来的内容在文件内的行号显示 
	[root@localhost ~]# grep -n 'from' 11.txt
	-A : 匹配成功之后,将匹配行的后n行显示
	-B : 匹配成功之后,将匹配行的前n行显示
	-C :匹配成功之后,将匹配行的前后各n行显示
	-c : 只显示匹配成功过的行数
	-o : 只显示匹配成功的内容
	-v : 反向过滤
	-q : 静默输出 (搭配$?使用 输出0正确,1错误)
	-i : 忽略大小写
	-l : 匹配成功之后,将文本的名称打印出来
	-R|-r : 递归匹配
	
	[root@localhost ~]# grep -nco 'root' /etc/passwd

	-E : 使用拓张正则 等价于 egrep (搭配拓张正则)
	
知识储备:
	$? : 上一行命令执行的结果,0代表执行成功,其他数字代表执行失败
	wc : 匹配行数
	# wc 搭配的参数
	wc -l : 打印匹配行数
	wc -c : 打印匹配的字节数
	
在/etc 目录下,有多少个文件包含root
grep -rl 'root' /etc/ | wc -l