3 2 文字處理工具

2021-10-21 20:01:18 字數 2637 閱讀 4370

全域性搜尋表示式

命令grep root file

過濾root關鍵字(貪婪模式)

grep ^root file

過濾以root開頭的關鍵字

grep root$ file

過濾以root結尾的關鍵字

grep -i root file

忽略大小寫

grep -e 「root字元之前不能有字元

grep -e 「root>」 file

root字元之後不能有字元

grep -數字

顯示過濾行以及其上面和下面的幾行

grep -n

顯示匹配的行所在行號

grep -a

顯示過濾行以及下面的幾行

grep -b

顯示過濾行以及上面的幾行

grep -v

反向過濾

grep字元數量匹配規則

說明^westos

以westos開頭

westos$

以westos結尾

w…sw開頭到s結尾中間4個任意字元

…ss結尾前面5個任意字元

*字元出現任意次

?0到1次

+1次到任意次

n次m到n次

0到n次

0到n次

最少m次

(lee)

lee字串出現2次

awk -f 分割符 begin{}{}end{} filename

nr					//行數

nf //列數

filename //檔名稱本身

linux //變數名

"linux" //字串

( 「」字串,不加「」就是變數)

/bash$/ 條件

/條件1|條件2/ //條件1或者條件2

/條件1||條件2/ //條件1或者條件2

/條件1/&&/條件2/ //條件1並且條件2

$0 //所有列

$1 //第一列

cp /etc/passwd .

cat passwd //刪除了部分內容

awk -f : '' passwd		//列印第一列的資料

awk -f : '' passwd //列印第二列的資料

awk -f : '' passwd //列印第一列和第二列的資料

awk -f : '' passwd //列印第一列和第二列資料時中間有分割符為空格

awk -f : 'beginend' passwd //列印第一列的資料,以userlist字串開始,以end字串結尾

awk -f : '' passwd //列印行數

awk -f : '' passwd //列印檔案的名字

awk -f : 'begin' passwd //列印linux變數的數值

awk -f : 'begin' passwd

awk -f : ' passwd //列印linux字串

awk -f : '/bash$/' passwd //列印以bash結尾的使用者(第一列的資料)

awk -f : '/bash$/&&/^root/' passwd //列印以bash結尾,並且以root開頭的字元(第一列)

awk -f : '/bash$/||/^root/' passwd //列印以bash結尾,或者以root開頭的字元(第一列)

awk -f : '/bash$/||/root/' passwd //列印以bash結尾,或者含有root的字元(第一列)

awk -f : '/bash$|root/' passwd //列印以bash結尾,或者含有root的字元(第一列)

awk -f : '/bash$&&root/' passwd //錯誤列印

awk -f : '$7~/\/bin\/bash/' passwd //列印第7列含有/bin/bash的第一列字元

awk -f : '$7!~/\/bin\/bash/' passwd //列印第7列不含有/bin/bash的第一列字元

awk -f : 『/root/' passwd //列印每行含有root關鍵字的第一列

測試1:

列印出passwd的總行數和最後一行使用者使用的shell的名稱

[root@westos_node1 desktop]# awk -f : 'end' /etc/passwd
測試2:

統計在系統中能su切換的並且使用者家目錄不在/home下的使用者數量

[root@westos_node1 desktop]# awk -f : 'begin/bash$|sh$/&&$6!~/^\/home/end' /etc/passwd

1

測試3:

列印出ip位址

[root@westos_node1 desktop]# ifconfig ens3 | awk '/inet\>/'

172.25.254.123

6文字處理工具

1 grep命令 i 忽略大小寫 n 顯示結果所在行的行號 c 結果個數 v 反向過濾 r 關鍵字 目錄 在目錄中過濾含有關鍵字的檔案 e 關鍵字1 關鍵字2 過濾多個關鍵字 root localhost cp etc passwd root localhost ls file filegreat ...

011 文字處理工具

cat b acl.txt 刪除空行標註行號 cat n acl.txt 統計所有行 cat ns acl.txt 壓縮空行,跟整體保持一致 cat a acl.txt 顯示所有控制符 tac acl.txt 反向顯示內容 cat顛倒了 rev f2.log 在同一行裡反寫 more anacond...

文字處理工具

參考 man,info,magedu講義 宣告 以下英文純屬個人翻譯,英文b級,歡迎糾正,以下內容純屬個人理解,並沒有對錯,只是參考,盜版不糾,才能有限,希望不誤人子弟為好。these commands read and write entire files,possibly transformin...