文のテキストの再構成

文のテキストの再構成

次のテキストファイルがあります。

group0          Level          1
name                   Matty1
name nickname        member4
name                   Matty2
name nickname        member14
group1          Level          1
name                   sanders1
name nickname        member0
name                   sanders2
name nickname        member1
name                   sanders3
name nickname        member2
name                   sanders4
name nickname        member3
group2          Level          2
name                   Kendal1
name nickname        member5
name                   Kendal2
name nickname        member15
group3          Level          2
name                   colen1
name nickname        member6
name                   colen2
name nickname        member7
name                   colen3
name nickname        member8

文章の単語を整理した後、会員ID別にソートしたいです。

member-0 sanders1 group1 1
member-1 sanders2 group1 1
member-2 sanders3 group1 1
member-3 sanders4 group1 1
member-4 Matty1 group0 1
member-5 Kendal1 group2 2
member-6 colen1 group3 2
member-7 colen2 group3 2
member-8 colen3 group3 2
member-14 Matty2 group0 1
member-15 Kendal2 group2 2

ベストアンサー1

awk '$2=="nickname"{print $3,name,group,digit;next}$1=="name"{name=$2;next}{group=$1;digit=$NF}' file | sed 's/member/member-/g' | sort -n -t- -k 2

member-0 sanders1 group1 1
member-1 sanders2 group1 1
member-2 sanders3 group1 1
member-3 sanders4 group1 1
member-4 Matty1 group0 1
member-5 Kendal1 group2 2
member-6 colen1 group3 2
member-7 colen2 group3 2
member-8 colen3 group3 2
member-14 Matty2 group0 1
member-15 Kendal2 group2 2

おすすめ記事