0

私は(基本的に)次のようなファイル(〜1k)を持っています:

NAME1.txt
NAME    ATTR    VALUE
NAME1   x       1      
NAME1   y       2
...

NAME2.txt
NAME    ATTR    VALUE
NAME2   x       19
NAME2   y       23
...

ATTR列はすべてのファイルで同じであり、名前列はファイル名の一部のバージョンです。それらを次のような 1 つのファイルに結合したいと思います。

All_data.txt
ATTR    NAME1_VALUE    NAME2_VALUE    NAME3_VALUE ...
X       1              19             ...
y       2              23             ...
...

コマンドラインユーティリティだけでこれを行う簡単な方法はありますか、それともスクリプトを書く必要がありますか?

ありがとう

4

1 に答える 1

0

スクリプトを作成する必要があります。gawk は明らかな候補です。 FILENAME を KEY として使用し、
ATTR " " VALUE 値を値として使用して、BEGIN ブロックに連想配列を作成できます。次に、END ブロックで出力を作成します。gawk は、*txt をファイル名として使用することにより、すべての txt ファイルをまとめて処理できます。

あなたが望むことを正確に行うための既製のコマンドがあると期待するのは少し楽観的です. データを水平方向に結合するコマンドはほとんどありません。

于 2012-09-28T15:06:05.343 に答える