學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 >

Linux命令中的正則表達(dá)式怎么使用

時間: 加城1195 分享

  Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計思想,是一個性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。很多時候我們需要做一些文本匹配等操作,要用到正則表達(dá)式,接下來通過本文給大家介紹Linux命令中的正則表達(dá)式,需要的朋友參考下吧

  具體介紹

  1、單字符匹配符.

  正則表達(dá)式主要由一些元字符和匹配模式組成

  單字符匹配符可以匹配任意單個字符,這個字符的功能和文件名匹配符中的?功能相同

  使用正則表達(dá)式查找文本,首先需要使用元字符組成一個查找模式

  (1)使用查找模式時,通常將其放入兩個斜杠//中,然后再放入命令,例如要在一個文本中查找匹配模式/.i...../,可能選項就有:只要小寫字母沒有出現(xiàn)在行首,或行尾的最后有5個字符都能匹配

  2、單字符或字符串重復(fù)匹配符*

  用來匹配單個字符或者一個字符串序列的一次或者多次重復(fù)出現(xiàn)

  3、行首匹配符^

  用于在匹配中指示行首位置字符串或者模式,使用時需要將行首匹配符放在要匹配的字符串或模式的前面

  例如對命令ls -1 使用行首匹配/^1/,結(jié)果都是以1開頭的

  4、行尾匹配符$

  用于在文本的每一行的行尾匹配字符串或模式,使用時將行尾匹配符放在字符串或模式后面

  例如在文本中匹配所有行尾是love的行

  /love$/

  5、反斜杠屏蔽符\

  該符用來屏蔽一些特殊字符的特殊含義,常見的特殊字符可能是引用符號,注釋符號,通配符和邏輯運算符等,下面列舉一些特殊的符號

  注釋、分隔符號:#、;等

  引用符號:$、``、""等

  元字符:.、*、^、$、?、[]、\等

  邏輯運算符或操作符:||、&&等

  在命令中使用這些字符時,都要使用反斜杠將其特殊含義屏蔽

  例如使用乘法符號*做乘法運算,就要用反斜杠將其特殊含義屏蔽在做使用

  # expr 256 \* 256

  6、范圍匹配符[]和排除范圍匹配符[^]

  與文件名通配符中的范圍匹配符用法基本相同

  (1)匹配單詞love和Love:

  /[L]ove/

  (2)不匹配所有的字母:

  [^a-z]

  7、詞首、詞尾匹配符 \< 和 \>

  用于在單詞開頭和單詞結(jié)尾匹配特定的字符或模式

  (1)例如要匹配以disc 為詞首的文本,可以使用

  /\

  (2)要匹配以ment為詞尾的文本,可以使用:

  /ment\>/

  8、重復(fù)次數(shù)匹配符"x\{\}"

  可以全精確匹配字符或字符串連續(xù)出現(xiàn)的次數(shù)或次數(shù)范圍

  (1)要匹配字母m出現(xiàn)次數(shù)為5次的文本,可以使用:

  /m\{5\}/

  (2)要匹配字母m出現(xiàn)次數(shù)至少5次的文本,可以使用:

  /m\{5,\}/

  (3)匹配字母m出現(xiàn)次數(shù)在5至10次的文本,可以使用:

  /m\{5,10\}/

  9、組合并使用正則表達(dá)式

  (1)在查找和篩選信息時,有時需要去除文本中的空行,由于空行沒有任 何字符,可以使用行首,行尾匹配符匹配空行

  /^$/

  (2)有時一些文本為了看上去更加美觀,會使用一種字符填充整行,可以使 用以下模式匹配這些行:

  /^.*$/

  (3)匹配以the或The開頭的所有行

  /^[tT]he/

  (4)排除以the和The開頭的所有行

  /^[^Tt]he/

  (5)匹配一個IP地址:

  /[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/

  (6)匹配一個6個字母組成的字符串,前兩個字符是字母,中間兩個字符是22 且最后兩個字符是小寫字母:

  [a-z]\{2\}22[a-z]\{2\}

  (7)要精確匹配單詞love:

  /\/

  補充:Linux基本命令

  1.ls命令:

  格式::ls [選項] [目錄或文件]

  功能:對于目錄,列出該目錄下的所有子目錄與文件;對于文件,列出文件名以及其他信息。

  常用選項:

  -a :列出目錄下的所有文件,包括以 . 開頭的隱含文件。

  -d :將目錄像文件一樣顯示,而不是顯示其他文件。

  -i :輸出文件的i節(jié)點的索引信息。

  -k :以k字節(jié)的形式表示文件的大小。

  -l :列出文件的詳細(xì)信息。

  -n :用數(shù)字的UID,GID代替名稱。

  -F : 在每個文件名后面附上一個字符以說明該文件的類型,“*”表示可執(zhí)行的普通文 件;“/”表示目錄;“@”表示符號鏈接;“l”表示FIFOS;“=”表示套接字。

  2.cd命令

  格式:cd [目錄名稱]

  常用選項:

  cd .. 返回上一級目錄。

  cd ../.. 將當(dāng)前目錄向上移動兩級。

  cd - 返回最近訪問目錄。

  3.pwd命令

  格式: pwd

  功能:顯示出當(dāng)前工作目錄的絕對路徑。

  相關(guān)閱讀:Linux主要特性

  完全兼容POSIX1.0標(biāo)準(zhǔn)

  這使得可以在Linux下通過相應(yīng)的模擬器運行常見的DOS、Windows的程序。這為用戶從Windows轉(zhuǎn)到Linux奠定了基礎(chǔ)。許多用戶在考慮使用Linux時,就想到以前在Windows下常見的程序是否能正常運行,這一點就消除了他們的疑慮。

  多用戶、多任務(wù)

  Linux支持多用戶,各個用戶對于自己的文件設(shè)備有自己特殊的權(quán)利,保證了各用戶之間互不影響。多任務(wù)則是現(xiàn)在電腦最主要的一個特點,Linux可以使多個程序同時并獨立地運行。

  良好的界面

  Linux同時具有字符界面和圖形界面。在字符界面用戶可以通過鍵盤輸入相應(yīng)的指令來進行操作。它同時也提供了類似Windows圖形界面的X-Window系統(tǒng),用戶可以使用鼠標(biāo)對其進行操作。在X-Window環(huán)境中就和在Windows中相似,可以說是一個Linux版的Windows。

  支持多種平臺

  Linux可以運行在多種硬件平臺上,如具有x86、680x0、SPARC、Alpha等處理器的平臺。此外Linux還是一種嵌入式操作系統(tǒng),可以運行在掌上電腦、機頂盒或游戲機上。2001年1月份發(fā)布的Linux 2.4版內(nèi)核已經(jīng)能夠完全支持Intel 64位芯片架構(gòu)。同時Linux也支持多處理器技術(shù)。多個處理器同時工作,使系統(tǒng)性能大大提高。


Linux命令中的正則表達(dá)式相關(guān)文章:

1.Linux 正則表達(dá)式詳解

2.linux文本內(nèi)容操作系列g(shù)rep命令詳解

3.linux命令之rename命令

4.linux中的awk命令

5.Linux系統(tǒng)重命名文件用什么命令

4019611