linux正規表示式指南

2021-05-25 09:47:54 字數 1644 閱讀 9440

1 首先要指出的是:shell中有萬用字元,也有正規表示式。注意區分。反正grep用的正規表示式。

作為乙個linux管理員,您需要對文字檔案進行處理。您可以使用不同的工具如grep

、awk

以及sed

去查詢包含特定文字串的檔案。這裡,我將介紹一種使用正規表示式,以靈活的方式,去搜尋檔案中的文字的方法。

讓我們考慮乙個正規表示式發揮作用的例子。比如,當你嘗試使用命令grep –r host /時,其返回的結果會很龐大。因為每乙個包含host這個文字串的字(像ghostscript這樣的字)都會匹配。採用正規表示式,你可以更好地定製你 要查詢什麼。例如,你可以使用正規表示式'^host',告訴grep僅僅查詢以host開始的行。

正規表示式並不是在所有命令中都可用,您使用的命令必須已經事先編好程式,以便能夠使用正規表示式。這些命令中最普遍使用的命令是grep、tr以及vi。其它的工具,像sed和awk,也可以使用正規表示式。

使用正規表示式的乙個例子為:

grep 'lin.x' *

正規表示式'lin.x'中的點有特殊的含義。它會匹配處於該位置的任意字元。為了防止解釋性的問題,我建議您總是將正規表示式置於單引號間,這樣就可以防止shell對正規表示式進行解釋。

使用正規表示式

您可以使用正規表示式做很多事情。在以下的列表中,您可以找到一些最普通、最常用的正規表示式的例子。

這些正規表示式可以幫助您找到包含特定文字串的字。您也可以使用正規表示式去指定,在乙個字中,該字串出現的頻率。比如,您可以使用正規表示式去搜尋 剛好包含使用者名稱"linda"三次的檔案。為了達到這一目的,您需要使用正規表示式的重複運算元,並保證整個正規表示式位於引號中。沒有引號的話,您可能會 導致shell去解釋您的重複運算元。

最重要的重複運算元的列表如下:

我們已經向您概述了正規表示式的使用方法。這可以讓您在做乙個管理員時,更加地有效率。正規表示式可以提供更多的功能,包括一些相當複雜的操作。但在之前,請首先掌握我們已經介紹的這些技能。正規表示式可以非常複雜,以至於你會很容易迷失其中。

特殊符號

代表意義

[:alnum:]

代表英文大小寫字元及數字,亦即 0-9, a-z, a-z

[:alpha:]

代表任何英文大小寫字元,亦即 a-z, a-z

[:blank:]

代表空格鍵與 [tab] 按鍵兩者

[:cntrl:]

代表鍵盤上面的控制按鍵,亦即包括 cr, lf, tab, del.. 等等

[:digit:]

代表數字而已,亦即 0-9

[:graph:]

除了空格符 (空格鍵與 [tab] 按鍵) 外的其他所有按鍵

[:lower:]

代表小寫字元,亦即 a-z

[:print:]

代表任何可以被列印出來的字元

[:punct:]

代表標點符號 (punctuation symbol),亦即:」 『 ? ! ; : # $…

[:upper:]

代表大寫字元,亦即 a-z

[:space:]

任何會產生空白的字元,包括空格鍵, [tab], cr 等等

[:xdigit:]

代表 16 進製的數字型別,因此包括: 0-9, a-f, a-f 的數字與字元

Linux正規表示式技術指南

techtarget中國 shell 工具linux 正規表示式 摘要 作為乙個linux管理員,您需要對文字檔案進行處理。您可以使用不同的工具如grep awk以及sed去查詢包含特定文字串的檔案。這裡,我將介紹一種使用正規表示式,以靈活的方式,去搜尋檔案中的文字的方法。作為乙個linux管理員,...

Linux正規表示式 編寫正規表示式

為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...

正規表示式 Linux

主要內容 1 正規表示式2 基礎3 擴充套件4 通配5 grep命令 正規表示式基礎 1 元字元 metacharacters 是用來闡釋字元表示式意義的字元,簡言之,元字元就是描述字元的字元,它用於對字元表示式的內容 轉換及各種操作資訊進行描述。正規表示式是由一串字元和元字元構成的字串,簡稱re ...