[英]Count of Special Characters by each column in awk
我下面有一個以逗號分隔的3列文件
101,daf*s,HJ
102*,dft,GH*
103,hh*f,FF
10*J,ff*H,P
我想按每一列計算*
的數量,並希望使用awk輸出如下所示的內容
Column 1:2
Column 2:3
Column 3:1
並且如果可能的話,我想使代碼盡可能地動態,從某種意義上說,如果列數也發生變化,則代碼應該能夠按每列打印*的計數。
使用awk
:
awk -F, '{
for (i=1; i<=NF; i++) a[i]+=gsub(/[*]/, "", $i)
}
END {
for (i=1; i in a; i++) print "Column "i":"a[i]+0
}' file
Column 1:2
Column 2:3
Column 3:1
設置字段分隔符,
。 遍歷列,並使用gsub
函數捕獲每列的返回值,並繼續添加到數組中。
在END
塊中,遍歷列數並打印輸出。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.