2019-03-20 第十一章 linux正則表達式與三劍客之 swk 知識應(yīng)用實踐

Day15

作者:方維超

歸檔:課堂筆記

時間:2019/3/20

學(xué)無止境谁撼,老男孩教育成就你人生的起點娃胆!

(接昨天問題)問題六——插入行內(nèi)容:

[root@oldboy/test]# sed '2a wo ai shao di' oldgirl.txt

I am oldboy teacher!

I teach linux.

wo ai shao di

I like badminton ball ,billiard ball and chinese chess!

our site is http://www.oldboyedu.com

my qq num is 49000448.

not 4900000448

my god,iam not oldboy,butOLDBOY!

[root@oldboy/test]# sed '1a wo ai shao di' oldgirl.txt

I am oldboy teacher!

wo ai shao di

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

our site is http://www.oldboyedu.com

my qq num is 49000448.

not 4900000448

my god,iam not oldboy,butOLDBOY!

image.png

練習(xí)sed

正則是貪婪匹配模式与倡,人性是貪婪的距帅。

問題1****:取出Linux****中執(zhí)行ifconfig eth0****后對應(yīng)的IP****地址(只能輸出IP****地址)抖仅。

方法1:

[root@oldboy/test]# ifconfig eth0|sed -n 2p|sed -e 's#^.inet##g' -e 's#netm.$##g'

10.0.0.200

[root@oldboy/test]# ifconfig eth0|sed -ne 's#^.inet##g' -e 's#netm.$##gp'

10.0.0.200

[root@oldboy/test]# ifconfig eth0|sed -n 2p|sed 's#^.inet##g'|sed 's#netm.$##g'

10.0.0.200

方法:要取一個目標,刪除目標兩邊的咏窿,就得到了目標:

先匹配上斟或,然后在刪除

邏輯圖:


image.png
image.png

驗證是否懂了的練習(xí)題:

stat /etc/hosts****自行取其中的644

[root@oldboy/test]# stat /etc/hosts|sed -n 4p|sed 's#^.(0##g'|sed 's#/-.$##g'

644

[root@oldboy/test]# stat /etc/hosts|sed -nr 's#^.(0(.)/-.*$#\1#gp'

644

[root@oldboy/test]# stat /etc/hosts|sed -rn 's#^.(0(.)/-.*$#\1#gp'

644

考試:ip add****的輸出取出IP****。

[root@oldboy/test]# ip add |sed -n 9p|sed 's#^.inet ##g'|sed 's#/24.$##g'

10.0.0.200

[root@oldboy/test]# ip add |sed -n 9p|sed -e 's#^.inet ##g' -e 's#/24.$##g'

10.0.0.200

[root@oldboy/test]# ip add |sed -rn 's#^.inet(.)/24.*$#\1#gp'

10.0.0.200

image.png

三劍客自身特長:

grep 過濾查找內(nèi)容(相當(dāng)于篩子)

sed 取行翰灾,替換缕粹,刪除,追加

awk 取列

awk****語法

image.png

參數(shù):

-F 指定分隔符

打印第一列

列:1第一列2第二列

$0整行

NF 最后一列纸淮,(NF-1)倒數(shù)第二列

cut 按列切割

-d 指定分隔符

-f 指定哪列,多列用亚享,連續(xù)多列如:f1-5****咽块;f3-5

練習(xí):

[root@oldboy/test]# cut -d"/" -f1,4,3,5 a.txt

1/3/4/5

[root@oldboy/test]# cut -d" " -f1-7 a.txt

1 2 3 4 5 6 7

[root@oldboy/test]# cut -d" " -f1,5,2,6 a.txt

1 2 5 6

練習(xí):

[root@oldboyedu ~]# sed -n '1,5p' /etc/passwd >oldboyedu.txt

[root@oldboyedu ~]# cat oldboyedu.txt

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

[root@oldboy/test]# cut -d":" -f3,4 b.txt

0:0

1:1

2:2

3:4

4:7

問題1:取test.txt文件的第2行到第3行的內(nèi)容。

[root@oldboy/test]# awk 'NR==2,NR==3' test.txt

PROXY_METHOD=none

BROWSER_ONLY=no

問題2:過濾出含有root字符串的行※欺税。

[root@oldboy/test]# awk '/IP/' test.txt

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_FAILURE_FATAL=no

IPV6_ADDR_GEN_MODE=stable-privacy

IPADDR=10.0.0.200

IPV6_PRIVACY=no

[root@oldboy/test]# grep "IP" test.txt

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_FAILURE_FATAL=no

IPV6_ADDR_GEN_MODE=stable-privacy

IPADDR=10.0.0.200

IPV6_PRIVACY=no

問題3:刪除含有root字符串的行※侈沪。

[root@oldboy/test]# awk '/[I]/' test.txt

TYPE=Ethernet

PROXY_METHOD=none

BROWSER_ONLY=no

BOOTPROTO=none

DEFROUTE=yes

NAME=eth0

UUID=b5b390e4-85a9-4923-a26b-18445fb1858a

DEVICE=eth0

ONBOOT=yes

PREFIX=24

GATEWAY=10.0.0.254

DNS1=223.5.5.5

[root@oldboy/test]# sed '/IP/d' test.txt

TYPE=Ethernet

PROXY_METHOD=none

BROWSER_ONLY=no

BOOTPROTO=none

DEFROUTE=yes

NAME=eth0

UUID=b5b390e4-85a9-4923-a26b-18445fb1858a

DEVICE=eth0

ONBOOT=yes

PREFIX=24

GATEWAY=10.0.0.254

DNS1=223.5.5.5

問題4:取文件的第一列、第三列和最后一列內(nèi)容晚凿,并打印行號※亭罪。

[root@oldboy/test]# cat -n b.txt |awk -F":" '{print 1,3,$NF}' b.txt

root 0 /bin/bash

bin 1 /sbin/nologin

daemon 2 /sbin/nologin

adm 3 /sbin/nologin

lp 4 /sbin/nologin

[root@oldboy/test]# awk -F":" '{print NR,1,3,$NF}' b.txt

1 root 0 /bin/bash

2 bin 1 /sbin/nologin

3 daemon 2 /sbin/nologin

4 adm 3 /sbin/nologin

5 lp 4 /sbin/nologin

問題5:取出Linux中執(zhí)行ifconfig eth0后對應(yīng)的IP地址(只能輸出IP地址)。

[root@oldboy/test]# ifconfig eth0|sed -n 2p|sed 's#^.inet ##g'|sed 's#netm.$##g'

10.0.0.200

問題6:過濾文件中第一列內(nèi)容匹配root的字符串歼秽,把符合的行的最后一列輸出

[root@oldboy/test]# awk -F":" '1~/root/{printNF}' b.txt

/bin/bash

問題7:過濾下列c.txt文件中第三列內(nèi)容分數(shù)大于70应役,并且小于95的人名和性別。

[root@oldboy/test]# awk '3>70&&3<95{print 1,2}' c.txt

張三 男

王五 男

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末燥筷,一起剝皮案震驚了整個濱河市箩祥,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌肆氓,老刑警劉巖袍祖,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異谢揪,居然都是意外死亡蕉陋,警方通過查閱死者的電腦和手機捐凭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來凳鬓,“玉大人柑营,你說我怎么就攤上這事〈迨樱” “怎么了官套?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蚁孔。 經(jīng)常有香客問我奶赔,道長,這世上最難降的妖魔是什么杠氢? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任站刑,我火速辦了婚禮,結(jié)果婚禮上鼻百,老公的妹妹穿的比我還像新娘绞旅。我一直安慰自己,他們只是感情好温艇,可當(dāng)我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布因悲。 她就那樣靜靜地躺著,像睡著了一般勺爱。 火紅的嫁衣襯著肌膚如雪晃琳。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天琐鲁,我揣著相機與錄音卫旱,去河邊找鬼。 笑死围段,一個胖子當(dāng)著我的面吹牛顾翼,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播奈泪,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼适贸,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了段磨?” 一聲冷哼從身側(cè)響起取逾,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎苹支,沒想到半個月后砾隅,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡债蜜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年晴埂,在試婚紗的時候發(fā)現(xiàn)自己被綠了究反。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡儒洛,死狀恐怖精耐,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情琅锻,我是刑警寧澤卦停,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站恼蓬,受9級特大地震影響惊完,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜处硬,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一小槐、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧荷辕,春花似錦凿跳、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至案站,卻和暖如春躬审,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蟆盐。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留遭殉,地道東北人石挂。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像险污,于是被迫代替她去往敵國和親痹愚。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,724評論 2 354