Linux命令彙總之正則表達式

正則表達式分兩類:基本正則表達式(BRE)和擴展正則表達式(ERE)。

  1. 基本正則表達式的元字符含義:

    1、.:匹配任何單個字符

    2、[]:匹配指定範圍內的單個字符

    3、[^]:匹配指定範圍外的單個字符

    4、*:匹配其前面任意次數的字符

    5、\?:匹配其前面0或1次

    6、\+:匹配其前面1或多次

    7、\{m\}:精確匹配m次

    8、\{m,n\}:匹配至少m次,最多n次

    9、.*:匹配任意長度的任意字符

    10、^:行首錨定,

    11、$:行尾錨定

    12、\<:詞首錨定(也可以用\b)

    13、\>:詞尾錨定(也可以用\b)

    14、^$:匹配空白行

    15、\(\):常與\n(n爲數字)一起用,用來匹配某單個或多個字符組合的重現次數

    二、擴展正則表達式的元字符含義:

                1、.:匹配任何單個字符

2、[]:匹配指定範圍內的單個字符

3、[^]:匹配指定範圍外的單個字符

4、*:匹配其前面任意次數的字符

5、?:匹配其前面0或1次

6、+:匹配其前面1或多次

7、{m}:精確匹配m次

8、{m,n}:匹配至少m次,最多n次

9、.*:匹配任意長度的任意字符

10、^:行首錨定,

11、$:行尾錨定

12、\<:詞首錨定(也可以用\b)

13、\>:詞尾錨定(也可以用\b)

14、^$:匹配空白行

15、():常與\n(n爲數字)一起用,用來匹配某單個或多個字符組合的重現次數

16、|:匹配|符號前或後的字符

    三、可以匹配正則表達式的命令有:(這裏只說grep命令)

                1、grep:grep用基本正則表達式來匹配文本行。

                            格式:grep [OPTIONS] PATTERN [FILE...]

                                        grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]

                             選項:

                                         -E:使用擴展正則表達式進行匹配(相當於egrep)

                                         -F:相當於fgrep

                                         -i:匹配時忽略大小寫

                                         -v:顯示不匹配模式的行

                                         -o:只顯示匹配到的行

                                          -q:靜默模式

                                           --color=auto:對匹配到的字符做高亮顯示

四、例子:

          1、顯示/etc/passwd文件中以bash結尾的行;

         2、顯示/etc/passwd文件中的兩位數或三位數;

       3、 顯示'netstat -tan'命令結果中以'LISTEN'後跟0個、1個或多個空白字符結尾的行

       4、添加用戶bash,testbash, basher以及nologin用戶(nologin用戶的shell爲/sbin/nologin);而後找出/etc/passwd文件中用戶名同shell名的行;

       5、顯示當前系統上root、centos或user1用戶的默認的shell和UID;

        6、找出/etc/rc.d/init.d/functions文件中某單詞(單詞中間可以存在下劃線)後面跟着一組小括號的行

       7、使用echo輸出一個路徑,而後egrep找出其路徑基名;

進一步地:使用egrep取出其目錄名

8、找出ifconfig命令執行結果中1-255之間的數字;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章