感谢支持
我们一直在努力

Linux基础教程学习笔记18——正则表达式grep使用

Linux基础教程学习笔记18——正则表达式grep使用

一、通配符
    [ ]:匹配中括号里面的一个字符;
            表示字母[a-z],[0-9]表示数字,

            括号里面的 ^ 表示否,等同于!,如[^a-z],[!0-9]

     
    \:转义字符:[a\-z]   

    ?:匹配任意一个字符;

    *:0个或者任意多个字符;

    类字符:

            [[:upper:]]

            [[:lower:]]

            [[:digit:]]

            [[:alpha:]]

            [[:alnum:]]

            [[:blank:]]

 

    yum是shell的子进程,如果在shell直接使用yum install xysfedfs*,则先会在shell中解析*,而不是在yum源中直接解析,如果不需要再shell中解析,则应该使用\或者”引起来,yum install xseds\*

    *或者?是不能匹配.符号:开启扩展通配符则可;
   

 

二、正则表达式

    grep对元字符的支持有限,可以使用grep -E或者egrep

    元字符:

            ^:开头

            $:末尾

            .:一个任意字符,在通配符中没有意义

            ?:匹配前面0或者1个字符

            +:匹配前面字符至少含有1个字符;

            *:匹配前面0个或多个字符;

            {m,n}:匹配前面字符m到n个;

            \<:以单词开头

            \>:以单词结尾;

            反向引用: ()  \1 引用第一个括号匹配的内容, \2匹配第二个括号匹配的内容,以此类推

    贪婪模式匹配:+

    最少模式匹配:  +?,
           

三、查询某张网卡的IP地址
   
[root@linuxidc ~]# ifconfig ens38 | grep ‘inet ‘|grep -oE ‘([[:digit:]]{1,3}.){3,}’|grep -vE ‘^255|0$|255$’
192.168.10.10

[root@linuxidc ~]# ifconfig ens38 | grep ‘inet ‘|awk ‘{print $2}’
192.168.10.10

grep使用简明及正则表达式  http://www.linuxidc.com/Linux/2013-08/88534.htm

Linux下Shell编程——grep命令的基本运用 http://www.linuxidc.com/Linux/2013-06/85525.htm

grep 命令详解及相关事例 http://www.linuxidc.com/Linux/2014-07/104041.htm

Linux基础命令之grep详解 http://www.linuxidc.com/Linux/2013-07/87919.htm

设置grep高亮显示匹配项 http://www.linuxidc.com/Linux/2014-09/106871.htm

Linux grep命令学习与总结 http://www.linuxidc.com/Linux/2014-10/108112.htm

本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-03/115275.htm

赞(0) 打赏
转载请注明出处:服务器评测 » Linux基础教程学习笔记18——正则表达式grep使用
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏