grep 正则表达式
grep ‘root’ /etc/passwd -i 忽略字母大小写 --colour 加颜色 grep --colour ‘root’ /etc/passwd -v 匹配到的行不显示,没有匹配到的显示 -o 只显示被匹配到的串,每个串显示为一行 -E 使用扩展正则表达式 -A #:显示其后#行 -B # 显示其前#行 -C # 显示其前后各#行 *:任意长度的任意字符 ?: 任意单个字符 []: [^]: a*b:匹配前面的a任意次 .*: 任意长度的任意字符 ?: 匹配其前面的字符1次或0次(一般配合?使用 ) {m,n}:匹配其前面的字符至少m次,至多n次 位置锚定: ^:此字符后面的任意字符必须出现在行首 grep ‘^root’ /etc/passwd $:锚定行尾 grep ‘b..h$’/etc/passed匹配在passwd中以b开头,以h结尾的 ,中间有任意两个字符的行 ^$:空白行 引用的时候用【】括起来 [:digit:]数字 [:lower:]小写字母 [:upper:]大写字母 [:punct:]标点符号 [:space:]空白字符 [:alpha:]所有字母 [:alnum:]所有数字和字母 &;:其后面的任意字符必须作为单词首部出现 等同于b &;:其前面的任意字符必须作为单词的尾部出现 等同于b 例&;root&; 查找文本中root这个单词 () :分组 多用于后项引用 用一个字符代替它 (ab)* ab可以出现一次零次或任意次 1:引用第一个左括号以及与之对应的右括号所包含的所有内容 例:grep ‘(l..e).*1’ 扩展正则表达式:必须使用egrep 或者grep -E 字符匹配: 同上 次数匹配 *: ?: +:其前字符至少一次 {m,n}: 分组: ():分组 不需要写斜线 或者: | :or 例:找出/boot/grub/grub.conf 1-255之间的整数 grep --colour -E '&;([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])&;' /boot/grub/grub.comf 找IP地址: &;[1-9]|[1-9][0-9]|1[0-9]{2}|2[01][0-9]|22[0-3]&;(.&;([0-9]|[1-9][0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4])&;)&;){2}.&;([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-4]&; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |