91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

shell 之 grep 和正則表達式(五)

發布時間:2020-07-24 14:43:03 來源:網絡 閱讀:4011 作者:上帝之子521 欄目:開發技術

        今天我們來學習下 shell 中的 grep 和正則表達式。作為基礎入門學習,也只是學習一些簡單的語法。

        首先我們來看看 grep 查找命令。我們先來看看 man grep

shell 之 grep 和正則表達式(五)

        我們看到 grep 的用法有很多,我們就來看看最常用的一些操作。

shell 之 grep 和正則表達式(五)

        我們可以看到 grep "a" test.txt 和 cat test.txt | grep "a" 的效果是一樣的,都是查找 a 這個字符。那么我們在前面加上 -v 呢,它表示的是除了帶有 a 字符剩余的別的內容

shell 之 grep 和正則表達式(五)

        我們看到 -c 的意思是打印出所查找字符的行數-v -c 就代表的是除所查找的字符以外的所有行數

shell 之 grep 和正則表達式(五)

        我們看到 -n 便是加上它所在的行號,同樣的也適用于 cat 命令

shell 之 grep 和正則表達式(五)

        我們看到 -A 2 是顯示所查找的字符的后兩行(after);-B 2 是顯示所查找的字符前兩行(before);-A 2 -B 2 和 -C 2 的效果是一樣的,都是顯示所查找字符的前后兩行的數據

shell 之 grep 和正則表達式(五)

        我們看到在 -r 選項是遞歸查找,如果我們在查找的子目錄中也有相應的字符串,那么我們此時加上 -r ,便會全部查找到。

        下來我們來學習下正則表達式,那么為什么要學習正則表達式呢?正則表達式: a> 能模糊、快速匹配數據串;b> 為學習 grep,awk,sed 等文本過濾命令做鋪墊;c > 編寫高級 bash 腳本的需要。那么正則表達式有哪些元字符呢?[ ] \ ^ $ . | ? * + ( )

        我們接下來來看看這些基本元字符的含義,如下

 shell 之 grep 和正則表達式(五)

        下來我們逐一來看看。

        1、^

shell 之 grep 和正則表達式(五)

        我們看到 ls | grep '^[0-9]' 查找的是以 0-9 開頭的文件,下面是 0-3 開頭的文件。在里面加上 ^ 表示非 0-3 開頭的所有文件。

        2、$

shell 之 grep 和正則表達式(五)

        我們看到我們在查找以 e 結尾的字符,然后再以數字 0-9 開頭的,它只能嚴格匹配到 3e 和 4e;而 56e 只能以不是 ^ 開頭的這樣方式來進行匹配。

        3、* 和 ?

shell 之 grep 和正則表達式(五)

        我們看到在以數字開頭,?* 后面接任意字符的字符串全被打印出來了。

        4、 .

shell 之 grep 和正則表達式(五)

        我們看到在以 5 開頭,e 結尾的字符串 56e 被成功匹配出來;

        5、pattern\{n\}

shell 之 grep 和正則表達式(五)

        我們看到兩次的區別是什么呢?前一次的是只要符合條件就都匹配出來,加上 ^ 則表示只以兩個數字開頭的字符串被匹配出來。

        6、pattern\{n, \}

shell 之 grep 和正則表達式(五)

        我們看到效果是最少出現 2 次,在后面我們寫進去的 77777777 也被匹配出來了。

        7、pattern\{n,m\}

shell 之 grep 和正則表達式(五)

        我們看到這次是在數字開頭的 2 和 4 之間的字符串。經過學習了這么多正則表達式的用法,發現它還是很靈活的,后面我們會繼續對正則表達式的學習。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

谷城县| 聂荣县| 临高县| 杭州市| 义马市| 霍邱县| 资阳市| 雷州市| 吉林市| 陵水| 崇明县| 莱西市| 汉中市| 平昌县| 墨江| 莱芜市| 全州县| 黄骅市| 平武县| 鄂温| 三明市| 江口县| 西青区| 饶平县| 城固县| 龙州县| 江津市| 兴海县| 德庆县| 射阳县| 霍邱县| 灵丘县| 平凉市| 山丹县| 古浪县| 鹰潭市| 赞皇县| 婺源县| 静宁县| 砀山县| 甘肃省|