正则表达式
1、正则表达式是Linux中很好用的一种文本处理工具。下面简单的介绍下用法和规则。 参数介绍(经常用的): grep –n //处理输出的过程中对文本的位置行号进行打印。 grep –I //在查找的过程中忽略查找内容的大小写。 grep –v //在查找的过程中忽略排除不包含查找条件的内容,就是反向查找的意思。 另外在grep中有许多的通配符可以提供给我们查找使用。 .:表示任意一个字符。 *:表示任意一个字符出现多少次。 .*:代表的就是任意多个字符的意思了。 {n,m}:前面的字符出现最少n次,最多m次。 ^:定位在行首。 $:定位在行尾。 ?:前面的字符出现一次或者0次。 &;word&;:查找的内容必须以单词的形式出现,其中的<符号可以用b来进行代替。 (…..):分组出现。 2、扩展正则表达式 {m,n}:匹配前面的字符出现最少m次,最多n次。 +:匹配前面的字符最少出现一次。 *:前面的字符出现任意次。 ?:匹配前面的字符出现出现0次或者是1次。 定位在行首和行尾的用法是和标准的grep是一样的在这里就不在进行赘述。 -------------------------------------------------------------------------------------------------------------------- 下面简单的介绍几个例子进行详细的说明。 练习: grep“^#[[:space:]]+.*” /etc/inittab 4、显示/etc/inittab中包含了:一个数字:(即两个冒号中间一个数字)的行; grep :[0-9]: /etc/inittab 5、显示/boot/grub/grub.conf文件中以一个或多个空白字符开头的行; grep^[[:space:]]{1,}.*" /boot/grub/grub.conf grep -E --color"^[[:space:]]{1,}.*" /boot/grub/grub.conf 6、显示/etc/inittab文件中以一个数字开头并以一个与开头数字相同的数字结尾的行; grep “(^[0-9]).*1$” /etc/inittab grep"[0-9]{1,3}."{3}.[0-9]{1,3} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |