1.Grep介绍: Grep全称为global search regular expression(RE)and print out the line。它是一个文本搜索工具,根据用户指定的文本模式对目标文件进行逐行搜索,显示能够被指定模式所匹配到的行。 格式: grep [option] ‘PATTERN’ file… 常用选项: -v:匹配到的不显示 -o:仅仅显示被匹配到的内容,而非整行 -i:不区分字符大小写,ignore-case -E:支持扩展的正则表达式 -A:after,匹配到的行和下行 -B:before,匹配到的行和上行 -C:context,匹配到的上下文

fgrep:fast grep 不解释正则表达式

2.正则表达式介绍: 正则表达式是一类字符所书写的模式pattern。它使用元字符用于额外功能性的描述,而不表示字符本身的意义。并且,正则表达式工作于贪婪模式,它能匹配多长就匹配多长。它分为两类:基本正则表达式和扩展正则表达式。 基本正则表达式元字符必须使用引号,grep命令仅仅支持基本正则表达式。而扩展的正则表达式使用grep –E 或者egrep。 2.1基本正则表达式: 2.1.1字符匹配: a). 匹配任意单个字符

grafana正则表达式重命名 正则表达式 grep_grafana正则表达式重命名

2.1.2次数匹配:用于指定匹配其前面的字符的次数 b)* :任意次。例子:xy表示匹配以y结尾,前面有任意次x的字符串。其中匹配xxy,xy,y(任意次中包括0次,注意和文件名通配的区别。) c). :任意长度的任意字符 d)? :前面字符为0次或者1次,因此前面的字符可有可无。

  1. e){m}:匹配m次 f){m,n}:匹配至少m次,至多n次 g){m,}:匹配至少m次 h){0,n}:匹配至多n次 2.1.3[ ] :匹配指定范围内的任意单个字符 i)[0-9],[[:digit:]]:数字 j)[a-z],[[:lower:]]:小写字母 k)[A-Z],[[:upper:]]:大写字母 l)[[:alpha:]] 大小写字母 m)[[:alnum:]] 所有数字,字母 n)[[:space:]] 空白字符 o)[[:punct:]] 标点符号 2.1.4[ ^ ]:表示指定范围外的任意单个字符 2.1.5位置锚定:用于指定字符出现的位置 p)^:锚定行首,^char q)$:锚定行尾,char$ r)^$:表示空白行 2.1.6单词位置锚定: s)<char:锚定词首 t)Char>:锚定词尾 2.1.7分组: u)() 例子:比如ab*xy表示,匹配b出现任意次。但是无法匹配ab出现任意次。而(ab)*xy表示,匹配ab出现任意次 2.1.8分组引用: v)\1:后向引用。引用前面第一个左括号以及对应右括号中的模式,所匹配的内容。 w)\2:后向引用,引用前面第二个括号 x)\3:引用前面第三个括号 例子 以数字或者字母来头,至少出现一次,并且作为分组。之间任意字符任意次,结尾引用该分组。

2.2扩展正则表达式 Egrep使用扩展正则表达式来构建模式,相当于grep –E 2.2.1元字符: 1.字符匹配: a). :任意单个字符 b)[ ] :指定范围内的任意单个字符 c)[^] :指定范围外的任意单个字符 2.次数匹配: a)* :匹配其前面的字符的任意次 b)? :匹配其前面字符0次或者1次 c)+ :匹配其前面的字符至少一次 d){m} :匹配其前面的字符m次 e){m,n}:匹配其前面的字符至少m次,至多n次 f){m,} :匹配其前面的字符至少m次 g){,n}:匹配其前面的字符至多n次 3.锚定: a)^ 行首锚定 b)$ 行尾锚定 c)<,\b 词首锚定 d)>,\b 词尾锚定 4.分组: a)() b)| 或关系。表示为整个字符串或者,如果需要单字符需要加()。如coun(T|t) 例子:匹配1-255的整数: [root@zabbix ~]# ifconfig | grep -E --color=auto "(<([1-9]|[0-9][0-9]|1[0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])>.){3}" inet addr:192.168.89.239 Bcast:192.168.89.255 Mask:255.255.255.0