本节内容
| 一 什么是正则 |
正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法
或者说:
正则就是用来描述一类事物的规则
生活中处处都是正则:
比如我们描述:4条腿 你可能会想到四条腿的动物或者桌子、椅子等
继续描述:4条腿,活的 就剩下四条腿的动物这一类了
在Linux中,通配符是由shell解释的,而正则表达式则是由命令解释的
下面我们就为大家介绍三种文本处理工具/命令:
grep, sed, awk,它们三者均可以解释正则
| 二 grep |
grep -选项
''' -n 显示行号 -o 只显示匹配内容 -q 静默模式,没有任何输出,得用$?来判断成功没有,即有没有过滤到想要的内容 -l 如果匹配成功,则将文件名打印出来,失败则不打印,通常 -rl 一起用 grep -rl 'root /test -A n 如果匹配成功,则将匹配行及其后n行一起打印出来 -B n 如果匹配成功,则将匹配行及其前n行一起打印出来 -A n 如果匹配成功,则将匹配行及其前后n行一起打印出来 日志分析时会用到 -c 如果匹配成功,则将匹配到的行数打印出来 -E 等于egrep,扩展 -i 忽略大小写 -v 取反,不匹配 -w 匹配单词 '''
grep -n 'root' /etc/passwd grep -o 'root' /etc/passwd grep -q 'root' /etc/passwd && echo $? grep -l 'root' /etc/passwd grep -A n 'root' /etc/passwd grep -B n 'root' /etc/passwd grep -C n 'root' /etc/passwd grep -c n 'root' /etc/passwd grep -i 'ROOT' /etc/passwd grep -v 'ROOT' /etc/passwd