第三章 Linux特殊字元和正規表示式

2021-08-02 00:18:45 字數 3374 閱讀 4191

一,本章內容

1,特殊字元

2,檔名萬用字元

3,多命令中的邏輯運算子和括號

4,命令中正規表示式

備註:本linux系統為

rhel5.3

二,linux系統特殊字元

1,雙引號

1],$ name=」mary」 

2],echo「now time: 』date』 」    # 使用反引號引用命令輸出

3],# echo $name | grep jhon alix

錯誤錯誤錯誤

# echo $name | grep 「jhon alix」

2,單引號

1],$ name=」mary」 

2],echo「now time: 』date』 」    # 使用反引號引用命令輸出

3],# echo $name | grep jhon alix

錯誤錯誤錯誤

# echo $name | grep 『jhon alix』

3,命令引用符反引號

# ls -l  『cat /etc/shells』

4,變數引用和命令轉換符美元符號

$表示引用乙個變數,只需在變數名稱前面加上」$」

# ls -l $(cat /etc/shells)    # 使用命令轉換符引用命令輸出

5,反斜線遮蔽符

\遮蔽特殊字元本身的含義。

# echo 「please pay \$15.50 .」    #使用反斜線遮蔽輸出字串中的$

三,檔名萬用字元

1,

?表示匹配檔名中任意乙個字元

# ls -l a?   

# ls -l a??  

2,

*表示匹配檔名中的任意字串,匹配長度可以是零到乙個字元,也可是很長字元組成的字串

# ls -l *c

# ls -l ee*c

# ls -l *c?

3,

[ ]字元範圍匹配,用於匹配乙個字元範圍,其表現形式可以是「

-」表示的字母和數字的範圍,也可以是幾個字元的組合

# ls -l [klsyz]*  #以

klsyz

中任意字母開頭的所有檔案

# ls -l a*[cde]?

4,

[! ]

排除範圍匹配符

,不匹配符號內出現的字元組合或字母數字範圍

# ls -l [0-9][!0-9]  #有兩個字元,且第乙個為數字,第二個為非數字

四,多命令中的邏輯運算子和括號

1,邏輯或」||」

command1 || command2

先執行命令1,若成功,則跳過命令

2,若失敗,執行命令

2

# mail -f /root/mbox || echo 「permission denied」

2,邏輯與」&&」

command1 && command2

先執行命令1,若成功,執行命令

2,,若失敗,則跳過命令

2

# mv ~/rm.txt / && echo 「successfully moving files」

3,括號

()與

{}

(command1 ; command2; command3...)

按順序執行括號裡面的命令,直至括號裡面的所有命令執行結束,然後返回執行其他命令。

五,命令中正規表示式

1,」.」 單字元匹配,放在」/ /」中

「/.i....../」

「/27210103../」

2,」*」 單字元或字串重複匹配符,用來匹配單個字元或乙個字串行的一次或多次重複出現。

「/bo */」 可匹配、bo, boo, booooo...

3,」^」 行首匹配符,用於在匹配中指示行首位置字串或模式

「/^l/」

「/^2721010325/」

正規表示式不具備匹配檔名功能。因此不能對ls -l命令直接使用以上模式,可以將上面的模式交由一些篩選命令處理,如交由

grep

命令時:

ls -l | gerp /^l/

4,」$」 行尾匹配符,用於在文字的每一行的行尾匹配符串模式,使用時放在匹配字串後面

「/^.....$l/」匹配所有只有5個字元的行

「/love$/」匹配行尾是love的行

5,」\」 反斜槓遮蔽符,如遮蔽#,

; ,「 , 『, : ,*, ^, $, ?, , \等

# expr 256 \* 256     

「/\^\^\.txt/」匹配^^.txt

6,」」 匹配符

「/[ll]ove/」匹配love, love

「/[^a-z]/」表示不匹配所有字母

7,」\<」 ,」\> 詞首匹配符,詞尾匹配符

「/\匹配所有以love為詞首的文字

「/love\>/」匹配所有以love為詞尾的文字

8,」x\」 重複次數匹配符

「/m\/」匹配m出現次數為

5次的文字

「/m\/」匹配m出現次數至少為

5次的文字

「/m\/」匹配m出現次數為5到

10次的文字

9,組合使用正規表示式

「/^$/」匹配空行

「/^.*$/」 用來匹配這樣的整行:使用一種字元填充整行。

「/^[tt]he/」匹配以the或者

the開頭的所有行

「/^[^tt]he/」排除以the或者

the開頭的所有行

「/[0-9]\\.[0-9]\\.[0-9]\\.[0-9]\\/」匹配乙個ip位址

「/\/」精確匹配love

Linux複習第三章

第三章 系統管理 1 linux系統中的使用者大體上可分為三組,分別為 管理員 普通使用者和 系統使用者 r itheima。刪除使用者的命令為userdel 選項 r會在刪除使用者的同時,刪除與使用者相關的檔案。因此本題的答案為 userdel r itheima。3 在linux系統中用於切換使...

第三章 字串

3 1 基本字串操作 字串是不可變的。類似以下的分片賦值是不合法的 website 3 com 報錯 3.2 字串格式化 在 的左側放置乙個字串,而右側放置希望格式化的值。format hello,s,s enough for ya?values world hot print format val...

第三章 堆疊

1.基礎知識 堆疊可以實現很多的應用,遞迴的問題轉化成非遞迴形式,在本質上也是堆疊的問題.它是一種 filo 操作的資料結構,一般也有兩種儲存方式 陣列跟鍊錶實現形式,這裡我給出了鍊錶形式的堆疊模板,裡面包括了基本的堆疊所有的操作,還有兩個比較著名的應用例子,時間倉促,精力比較有限,關於迷宮老鼠還沒...