9.1 正则介绍_grep上

Linux学习笔记第六周第一次课(3月12日)

Linux学习笔记第六周第一次课(3月12日)

egrep是grep的扩展,具有所有grep功能;

grep是用来过滤关键词的;

Linux学习笔记第六周第一次课(3月12日)Linux学习笔记第六周第一次课(3月12日)

-r遍历所有子目录

-v取反,意思是除了关键词所在行,其他行显示出来;

Linux学习笔记第六周第一次课(3月12日)Linux学习笔记第六周第一次课(3月12日)


9.2 grep中

Linux学习笔记第六周第一次课(3月12日)

Linux学习笔记第六周第一次课(3月12日)

'【0-9】'表示从0到9任意一个数字;

'【^0-9】'表示非0到9任意数字;

'^#'表示以#开头的行;

^放到中括号里面'[^关键词]',表示非;

^放到关键词前面‘^关键词’表示以关键词开头;

Linux学习笔记第六周第一次课(3月12日)Linux学习笔记第六周第一次课(3月12日)


9.3 grep下


‘r.o’中,字符“.”表示任意一个字符;

‘r*o’中,字符“*”表示任意N个字符;

‘.*’表示所有字符;

\脱意字符;

{}花括号表示前面字符的重复范围;

‘o\{2\}’表示两个o;

grep -E相当于egrep;

grep 'o\{2\}' passwd相当于egrep  'o{2}' passwd或grep -E 'o{2}' passwd;

+表示前面字符的1次或多次出现;

?表示前面字符的0次或1次;'o?t'就表示t或ot;

|表示或者;

()表示一个组合字符串;


扩展

把一个目录下,过滤所有*.php文档中含有eval的行

grep -r --include="*.php" 'eval' /data/