コマンドラインツールを使用して、タブで区切られたテーブルを表示された部分に変換するには?

コマンドラインツールを使用して、タブで区切られたテーブルを表示された部分に変換するには?

つまり、次のように設定してください。

Column_A   Column_B   Column_C
--------   --------   --------
value-1a   value-1b   value-1c
value-2a   value-2b   value-2c

以下を入力してください:

Column_A: value-1a
Column_B: value-1b
Column_C: value-1c

Column_A: value-2a
Column_B: value-2b
Column_C: value-2c

ベストアンサー1

上記のテーブルが次の名前のファイルにある場合table

$ awk 'NR==1 { for (i=1;i<=NF;i++) header[i]=$i }
       NR>2  { for (i=1;i<=NF;i++) print header[i] ": " $i
               print ""}' table

ヘッダーは最初の行に収集されます。 2行目はスキップされます。残りの行は示されているように印刷されます。

私はそれは非常にエレガントだとは思わないが、仕事を完了します。

おすすめ記事