你會(huì)在 Linux 上使用更好的正則表達(dá)式嗎?
它的名字來(lái)自ed命令g/re/p(全局搜索正則表達(dá)式并打印匹配行 globally search for a regular expression and print matching lines),現(xiàn)在請(qǐng)先查看下面的截圖。
命令行g(shù)rep示例
在上圖中,我們?cè)?grep 和我們的路徑之間使用了單詞(enable)。換句話說(shuō),我們簡(jiǎn)單地使用正則表達(dá)式,在 sysctl.conf 中找到單詞(enable)。
請(qǐng)始終記住,只有命令行 grep 是區(qū)分大小寫的,因此如果我使用單詞(Enable)什么都沒(méi)有顯示。
請(qǐng)查看下面的圖片以了解 grep 的用法(不區(qū)分大小寫)。
grep 示例(不區(qū)分大小寫)
例如,我們?cè)谏厦媸褂昧藰?biāo)志 -i 來(lái)幫助我們單詞(All) 甚至不區(qū)分大小寫,在沒(méi)有區(qū)分大小寫的輸出中發(fā)現(xiàn)它的整個(gè)單詞(All),您也可以使用兩個(gè)標(biāo)志,例如 -wi,它只幫助高亮顯示的行與整個(gè)單詞匹配。查看下圖了解grep(反轉(zhuǎn)匹配invert match)的用法。
grep 示例(反轉(zhuǎn)匹配)
我們使用了兩個(gè)按名稱命名的標(biāo)志-vn,例如上面的標(biāo)志(n)幫助我們看到數(shù)字行,標(biāo)志(v)選擇與單詞(系統(tǒng))不匹配的行,如果你只想顯示匹配單詞的數(shù)量,你可以使用標(biāo)志-c,如圖所示:
grep示例(計(jì)數(shù)匹配)
上面的例子更好地說(shuō)明了匹配行數(shù)的單詞(system),我們可以使用單引號(hào)進(jìn)行單詞匹配,看看下面的例子。
grep(point)示例
在上面的例子中,使用了三個(gè)點(diǎn)來(lái)突出顯示(…)之間的所有內(nèi)容。此外,我們還使用括號(hào)查找所有匹配的單詞,您可以查看下圖。
grep 示例(括號(hào))
在上面的示例中,單詞(a)匹配括號(hào)中的所有內(nèi)容,如果我們?cè)诘谝粋€(gè)開(kāi)頭使用 ^,則單詞表示第一個(gè)以您的單詞開(kāi)頭,請(qǐng)看下圖。
grep的例子(單詞開(kāi)頭的^)
此外,我們?cè)谧詈笠粋€(gè)字符處使用$,然后表示單詞的最后一個(gè)字符。請(qǐng)看下圖。
grep 示例
你也可以像這個(gè)例子那樣用管道傳遞你的意思。
grep 示例
在上面的例子中,如果在輸出中找到單詞(console),則顯示出來(lái);否則單詞(networks)就會(huì)顯示出來(lái),如果我們想使用大寫字符進(jìn)行打印,請(qǐng)使用下圖所示的grep
grep 示例
我們可以使用像 * 這樣的特殊字符,表示零個(gè)或多個(gè),如下面的示例:
grep 示例
最后解釋擴(kuò)展的正則表達(dá)式,您可以查看下面的圖片。
OK,你學(xué)會(huì)了嗎?我希望你喜歡這篇文章。