在awk中,可以用!a[0]
++做為
條件,對
重複出現
的行進行
處理。b
ash−
3.2 cat 2
abc
abc
ef 123
dgag
123
***bash-3.2aw
k′!a
[ 0]++』 2
abc
ef 123
dgag
***對於awk 『!a[$3]++』,需要了解3個知識點
1、awk陣列知識,不說了
2、awk的基本命令格式 awk 『pattern』
省略action時,預設action是,如awk 『1』就是awk 『1』
3、var++的形式:先讀取var變數值,再對var值+1
以資料
1 2 3
1 2 3
1 2 4
1 2 5
為例,對於awk 『!a[3]
++′a
wk處理
第一行時
:先讀取
a[3]值再自增,a[3]
即a[3
]值為空
(0),
即為aw
k『!0
′,即為
awk『
1′,即
為awk
『1pr
int′
awk處
理第二行
時:先讀
取a[ 3]值再自增,a[$3]即a[3]值為1,即為awk 『!1』,即為awk 『0』,即為awk 『0』
………….
最後實現的效果就是對於3是
第一次出
現的行進
行列印,
也就是去
除 3重複的行
awk使用例項說明
awk 用法 awk pattern 變數名含義 argc 命令列變元個數 argv 命令列變元陣列 filename 當前輸入檔名 fnr 當前檔案中的記錄號 fs 輸入域分隔符,預設為乙個空格 rs 輸入記錄分隔符 nf 當前記錄裡域個數 nr 到目前為止記錄數 ofs 輸出域分隔符 ors 輸...
awk使用例項一則
meta db n e use web boss rainbow select idsid,sdbname,shost,sport,snameservicekey,sdriver from t boss v2 page datasource sed i s t g i 1while read lin...
AWK簡單例項
摘自 http bbs.xplore.awk是一種模式掃瞄合處理語言,其名稱來自最初的作者alfred v.aho,perter j.weinberger和brian w.kernighan的字母縮寫,最早的awk是在at t的bell實驗室發明的。linux下面使用的awk是gnu awk。awk...