GREP EGREP的用法及正則表達式和擴展正則表達式簡述

  1. egrep grep的使用方法

  2. 正則表達式及擴展表達式簡述

  3. 使用事例

     

    grep egrep都是文本搜索工具,可以把符合模式的行或字符顯示出來,而這些模式grep一般使用正則表達式進行匹配,而egrep使用擴展正則表達式來進行匹配的。

    grep及egrep的使用方法:

                                                grep [option] pattern file…..

                                                option:

                                                            -o:顯示只顯示匹配到的字符

                                                            -v:顯示與匹配模式相反的行

                                                            -i:忽略匹配模式的大小寫進行匹配

                                                            -E:使用egrep進行匹配

                                                 egrep [option] pattern file…..

                                                  option

                                                            -o:顯示只顯示匹配到的字符

                                                            -v:顯示與匹配模式相反的行

                                                            -i:忽略匹配模式的大小寫進行匹配

正則表達式:

                        字符匹配

                                        . : 表示匹配單個任意字符

                                        [[:alpha:]]:表示匹配單個字母

                                        [[:lower:]]:表示匹配單個小寫字母

                                        [[:upper:]]:表示匹配單個大寫字母

                                        [[:digit:]]:表示匹配單個數字

                                        [[:space:]]:表示匹配單個空白字符

                                        [[:alnum:]]:表示匹配單個字母或數字

                        次數匹配

                                        *:表示匹配前一個字符的任意次

                                        \?:表示匹配前個一個字符一次或零次

                                        \{m\}:表示匹配前一個字符m次

                                        \{m,n\}:表示匹配前一個字符至少m次,至多n次

                                        \{m,\}:表示匹配前一個字符至少m次

                                        \{0,m\}:表示匹配前一個字符至多m次

                                        注(.* 表示 匹配任意長度的任意字符)

                        位置錨定

                                        ^:表示鎖定行首

                                        $:表示鎖定行尾

                                        \<:表示鎖定字母的首部

                                        \>:表示鎖定字母尾部

                                       (注:^$ 表示匹配空白行)

                        分組:\(字符\):表示里面的字符組合為一個分組;我們可以用 \1 \2 …\#進行該分組內容的引用

 

                        補: \| 表示 或者 例如 a \| b a或b匹配其中一個

                                \+ 表示匹配前個字符至少一次

擴展正則表達式

                              字符匹配

                                        . : 表示匹配單個任意字符

                                        [[:alpha:]]:表示匹配單個字母

                                        [[:lower:]]:表示匹配單個小寫字母

                                        [[:upper:]]:表示匹配單個大寫字母

                                        [[:digit:]]:表示匹配單個數字

                                        [[:space:]]:表示匹配單個空白字符

                                        [[:alnum:]]:表示匹配單個字母或數字

                        次數匹配

                                        *:表示匹配前一個字符的任意次

                                        ?:表示匹配前個一個字符一次或零次

                                        {m}:表示匹配前一個字符m次

                                        {m,n}:表示匹配前一個字符至少m次,至多n次

                                        {m,}:表示匹配前一個字符至少m次

                                        {0,m}:表示匹配前一個字符至多m次

                                         +:表示匹配前個字符至少一次

                            

                        位置錨定

                                        ^:表示鎖定行首

                                        $:表示鎖定行尾

                                        \<:表示鎖定字母的首部

                                        \>:表示鎖定字母尾部

                         分組

                                    (字符):表示里面的字符作為一個組合;用 \1 \2 …\#來引用

事例

        事例一:

                    顯示/etc/passwd文件中其默認shell為非/sbin/nologin的用戶

GREP EGREP的用法及正則表達式和擴展正則表達式簡述                                XU~R@8~_IU@TBRS~0TY_66L.png

        事例二:

                      顯示/etc/rc.d/rc.sysinit文件中,以#開頭,后面跟至少一個空白字符,而后又有至少一個非空白字符的行

                    V1]}RZ1QL3PBP_WNI]IG]_5.png           事例三:

                            寫一個模式,能匹配合理的ipv4地址(1.0.0.1-239.255.255.255)

[1-9] | [1-9][0-9] | 1[0-9][0-9] | 2[1-3][0-9]\.[0-9] | [1-9][0-9] | 1[0-9][0-9] | 2[1-4][0-9] | 25[0-5]\.[0-9] | [1-9][0-9] | 1[0-9][0-9] | 2[1-4][0-9] | 25[0-5]\.[1-9] | [1-9][0-9] | 1[0-9][0-9] | 2[1-4][0-9] | 25[0-5]

                                                            

原創文章,作者:13-廣州-楊過,如若轉載,請注明出處:http://www.www58058.com/6593

(0)
13-廣州-楊過13-廣州-楊過
上一篇 2015-07-27 22:55
下一篇 2015-07-28 09:35

相關推薦

  • php-fpm

    1.安裝 mariadb 服務 修改配置文件 2.musql 安全加強 3.安裝 php-fpm php-mysql php-mbstring php-mcrypt 服務 修改配置文件 4.安裝httpd服務 加虛擬主機配置文件 5.測試php網頁 6.安裝myadmin包及測試

    2017-06-04
  • Git 分布式 Moosefs + Corosync + DRBD 集群

        對于 Git 集群來說,在不采用存儲陣列的情況下,分布式存儲系統是一個很好的解決方案。目前可使用的分布式文件系統,初步了解了一下,Git 是屬于小文件的應用,因此可考量的我想就只有目前的 Moosefs、Ceph 了,Ceph 目前好似國內應用不多,貌似不太穩定。至于 GlusterFS 其比較適用于大文件的應…

    Linux干貨 2016-02-22
  • 馬哥教育千萬級PV實戰大揭秘

    又到了激動人心的架構實戰項目實踐時間,馬哥教育面授班的學員都很期待這一刻的到來,因為經過此次洗禮,能讓自己成長更多! 上周二,馬哥教育張Sir帶領18期面授班的學員們做千萬PV級別的電商架構實戰項目!新增的多臺R710企業級服務器設備,輕松搭建大數據、云計算等高端實驗環境,讓實戰,更加真實!相信經過這場實戰的洗禮,小伙伴們架構技能會有更大提升! 【張Sir生…

    2016-06-30
  • 用戶和組相關的配置文件總結

    前言: 在用戶管理,組管理過程中,最基本的四個文件就是/etc下面的passwd,shadow,group,gshadow。他們記錄了與用戶和組相關的信息。是學習和深入了解用戶,組的基本。 除了這些基本的配置文件 還有與初始化相關的配置文件。定義用戶添加時初始狀態的配置文件/etc/default/useradd。 以及用戶家目錄的內容文件參考目錄/etc/…

    Linux干貨 2016-10-24
  • Shell腳本自動部署(編譯)LAMP平臺

    Shell腳本自動部署(編譯)LAMP平臺 Shell腳本自動部署(編譯)LAMP平臺 為什么要用腳本進行部署? 腳本功能介紹 筆者環境 準備工作 聲明 使用測試 腳本代碼 Shell腳本自動部署(編譯)LAMP平臺 LAMP是當下非常流行的一套Web架構,我們可以在GNU/Linux下通過其他人打包的程序包來進行安裝; 但是在生產環境中,很多時候都需要我們…

    Linux干貨 2016-03-26
  • HA Cluste 的配置:keepalived:vrrp協議 主備模型

    keepalived:vrrp協議 主備模型 第一步配置出始環境: 準備兩節點: 主節點:172.18.57.7 long1 備節點:172.18.57.8 long2 (1) 各節點時間必須同步; 同步時間: ~]# yum -y install chrony ~]# vim /etc/chrony.conf ~]# systemctl start chr…

    Linux干貨 2017-05-15

評論列表(1條)

  • yini
    yini 2015-07-28 19:52

    已mark。 :smile:

欧美性久久久久