0
的n個我有一個文本文件是這樣的:AWK集團通過後線
lqqqqqqqqqqqqqqqqqqwqqqqqqqqqqqqqqqqqwqqqqqqqqqqqqqk
xtable_name xcolumn_name xother_info x
tqqqqqqqqqqqqqqqqqqnqqqqqqqqqqqqqqqqqnqqqqqqqqqqqqqu
xqs_tab1 xcol01 xblahblah01 x
xqs_tab1 xcol02 xblahblah02 x
xqs_tab1 xcol03 xblahblah03 x
xqs_tab2 xcol09 xblahblah04 x
xqs_tab2 xcol01 xblahblah05 x
xqs_tab2 xcol02 xblahblah06 x
xqs_tab2 xcol03 xblahblah07 x
xqs_tab2 xcol04 xblahblah08 x
xqs_tab2 xcol05 xblahblah09 x
xqs_tab2 xcol06 xblahblah10 x
xqs_tab3 xcol01 xblahblah11 x
xqs_tab3 xcol02 xblahblah12 x
mqqqqqqqqqqqqqqqqqqvqqqqqqqqqqqqqqqqqvqqqqqqqqqqqqqj
我想獲得列的數量在每個表是這樣的:
qs_tab1, 3
qs_tab2, 7
qs_tab3, 2
看了在這個論壇上有類似的問題,我創建了以下腳本:
#!/bin/sh
awk '
BEGIN { FS=" x";}
{
tablename[$1]++;
}
END { for (i in tablename) {
print tablename[i], i;
}
}
'
這使我獲得最多的方式,但我想錯過前3行和最後一行。
我曾嘗試在各處放置if (NR > 3)
類型的語句,但我總是收到錯誤。
我還想避免每行中的第一個"x"
- 但這不是一個問題。