1

私はファイルを持っています:

AA  jeden
BB  dwa
CC  trzy
DD  cztery
EE  piec
FF  szesc
to  ttttttt
GG  siedem
HH  osiem
II  dziewiec
JJ dziesiec
JJ jola 
EE ela 
BB baska 
FF flora 
II irga 
AA adam 
to llll 
DD darek 
CC celina 
HH hela 
GG gosia

このコマンドは次のように出力します。

$ awk '{ count[$1] = count[$1] " " $2 }; END { for (key in count) { print count[key] }}' file
 jeden adam
 dwa baska
 ttttttt llll
 trzy celina
 cztery darek
 piec ela
 szesc flora
 siedem gosia
 osiem hela
 dziewiec irga
 dziesiec jola

印刷したい:

jeden adam
dwa baska
ttttttt llll
trzy celina
cztery darek
piec ela
szesc flora
siedem gosia
osiem hela
dziewiec irga
dziesiec jola

フィールド$1の前の空きスペースを削除するにはどうすればよいですか?

ご協力ありがとうございました。

4

2 に答える 2

4
awk '{ count[$1]=(count[$1])?count[$1] " " $2 :$2 }; END { for (key in count) { print count[key] }}' file

空の割り当ての場合、それ以外の場合は追加します。

于 2012-10-17T11:18:42.853 に答える
4
awk '{ count[$1] = count[$1] sep[$1] $2; sep[$1] = " " } END { for (key in count) { print count[key] }}' file
于 2012-10-17T11:22:11.600 に答える