grep命令:print lines matching a pattern
【功能】使用grep命令查找文件内容中的匹配到的字符串显示之,也称为过滤器,当然支持正则表达式复合使用。
【语法】
grep [options][pattern] filename
【常用选项】
-i:表示忽略大小写显示之 -n:输出行号 -o:表示只显示被匹配到模式的本身 -v:表示显示反显,匹配的不显示,没匹配到的显示之 -A # :显示匹配到的后#行 -C # :显示匹配到的前后#行 -B # :显示匹配到的前#行 --color=auto:将匹配到的内容着色显示之
【实例1】默认着色显示
【实例2】-i选项不区分大小写
【实例3】反显和显示行号
【实例4】只显示匹配到模式的本身
正则表达式:在linux系统中shell,有特定的特殊符号来实现匹配文本中的指定字符串,在于许多复杂难以写出或需要匹配特定位置[范围]时,可使用正则表达式匹配模式来实现,类似glob通配符。
在linux系统中正则表达式应用很广泛,常见使用正则表达式的工具有以下几个
用于匹配文本行的grep工具家族(grep,grep,fgrep) 用于改变输入流的sed流编辑器(stram editor) 用于处理字符串语言的gawk,python,perl等 文件查看程序,或分页程序,more,less 文本编辑器vim
正则表示分为基本正则表达式和扩展正则表达式
note:分组中的()如果有多个,后项引用分前后,或者是(()) 从外到内分别为\1\2
【实例1】模式"^1",表示匹配首行为1的行,锚定行首
【实例2】模式"$",表示匹配行尾字符的行,锚定行尾
【实例3】模式{m},表示匹配前面字符1m次匹配,
【实例4】匹配至少一次,最多n次
【实例5】匹配前字符至少m次,最多n次匹配
【实例6】专用字符集
转载于:https://blog.51cto.com/perthon/1766513