各种文本工具来查看、分析、统计文本
grep :文本过滤(模式 pattern)工具
grep[OPTIONS] PATTERN FILE …….
查看在/etc/passwd 文件中含有 root 的一行显示出来

红色显示的是在/etc/passwd 文件下含有root 的字符串显示出来
grep后面可以跟变量,字符串,也可以跟命令
命令要被命令调用,得用反单引号例如 grep `whoami`/etv/passwd

grep 的命令选项
-v: 显示不被pattern匹配到的行
-i: 忽略字符大小写
-n:显示匹配的行号
-c: 统计匹配的行数
-o: 仅显示匹配到的字符串
-q: 静默模式,不输出任何信息
-A #: after, 后#行
-B #: before, 前#行
-C #:context, 前后各#行
-e:实现多个选项间的逻辑or关系
grep –e ‘cat ’ -e ‘dog’ file
-w:匹配整个单词
-E:使用ERE
-F:相当于fgrep,不支持正则表达式
grep -v “root” /etc/passwd 显示不包含root 的行

grep 后面要过滤的变量 ,字符串,命令要带双引号
grep -A 3 “root” /etc/passwd 显示包括root 以后的后3行

同理 grep -nB3 “root” /etc/passwd 显示包括root以前的三行
grep -nc3 “root” /etc/passwd 显示包括root 即有前三行也有后三行

-n 显示行数
grep -e “root” -e “bash” /etc/passwd 过滤出含有root 或者bash的字符串

-w 后面匹配整个单词

-f 后面跟文件 把指定的单词,字符串放到 -f 指定的文件里
先建立文件p.txt 然后把root bash 放进文件中 在用 -f 显示出来

echo $? 可以判断上一个命令是否正确 如果显示的是非零那么前一个命令是错误的

如果echo $? 显示的是0 那么 前一个命令就是正确的

只想关心结果 就用&>/dev/null 把不需要的就放进/dev/null里面 /dev/null 属于垃圾回收

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/95719
本文介绍如何使用grep命令对文本进行过滤操作,包括基本用法、各种选项参数及实际应用场景,帮助读者掌握grep的强大功能。

被折叠的 条评论
为什么被折叠?



