shell指令碼程式設計之grep的使用

2021-10-23 14:20:53 字數 810 閱讀 7509

grep是乙個基於正規表示式的全域性文字搜尋工具,並能將匹配到的文字按行列印。用於過濾/搜尋的特定字元。

語法:

# grep [選項] 正規表示式 [目標檔案]

grep

[options] pattern [file...]

# grep [選項] -e 正則表表示式 或 -f 包含正則表表示式的檔案 [目標檔案]

grep

[options]

[-e pattern | -f file]

[file...]

選項:

-v:輸出不帶關鍵字的行(反向查詢,反向匹配)

-n:顯示結果所在行號

-i:在搜尋的時候忽略大小寫

-o:只顯示符合條件的字串,但是不整行顯示,每個符合條件的字串單獨顯示一行

-r: 當前目錄所有檔案中查詢

-e:實現多個選項的匹配,邏輯 or 關係

-e:使用擴充套件正規表示式,而不是基本正規表示式,在使用 "-e" 選項時,相當於使用 egrep

-w:匹配整個單詞,如果是字串中包含這個單詞,則不作匹配

-c:統計匹配到的行數,注意,是匹配到的總行數,不是匹配到的次數

-ax:在輸出的時候包含結果所在行之後的指定行數,這裡指之後的x行,a:after

-bx:在輸出的時候包含結果所在行之前的指定行數,這裡指之前的x行,b:before

-cx:在輸出的時候包含結果所在行之前和之後的指定行數,這裡指之前和之後的 x 行,c:context

-p:表示使用相容 perl 的正則規則

Shell指令碼程式設計之Shell函式

1.linux shell可以使用者定義函式,然後在shell指令碼中可以隨便呼叫 shell中函式的定義格式如下 function funname 1 可以帶function fun 定義,也可以直接fun 定義,不帶任何引數 2 引數返回,可以顯示加 return返回,如果不加,將以最後一條命令...

Shell指令碼程式設計之Shell陣列

1.bash支援一維陣列 不支援多維陣列 並且沒有限定陣列的大小 1 定義陣列 array name value0 value1 value2 value3 或者array name value0 value1 value2 value3 或者單獨定義 2 讀取陣列 使用 符號可以獲取陣列中的所有元...

shell 指令碼程式設計之引用

shell 中字元分為兩種,一種是普通字元,另一種是元字元 meta 元字元是 shell 的保留字元,在 shell 中有著特殊的意義。引用是指將字串用某種符號括起來,以防止特殊字元被解析成其它意思。shell 中有四種引用符,用雙引號,單引號,反引號和轉義字元。特殊字元無法直接輸出,因為特殊字元...