3

私はこのようなファイルを持っています:-

123,Bob
456,Joe
789,Jane

そして、このようなファイル

456,abc,Red
789,def,Yellow

ファイル 2 からファイル 1 に列 3 を追加したいのですが、最初の列が一致する場所にのみ追加し、次のような結果になります:-

123,Bob
456,Joe,Red
789,Jane,Yellow

これを行うために、Cygwin コマンドラインで使用できるツール (awk、貼り付けなど) があります。

4

1 に答える 1

6

ペーストがある場合は、この種のもの用に設計された結合も必要です。入力ファイルがキーでソートされていると仮定すると、次のように言えます。

join -t, in1 in2

出力:

456,Joe,Red
789,Jane,Yellow

新しい要件に対応するために編集する

-o次のスイッチを使用できます。

join -t, -o 1.1,1.2,2.3 in1 in2

最初のファイルからペアになっていない行を保持したいようです。その場合は、次を使用します-a1

join -t, -o 1.1,1.2,2.3 -a1 in1 in2

出力:

123,Bob,
456,Joe,Red
789,Jane,Yellow

これにより、対になっていない行の末尾に不要なコンマが残りますが、これは で削除できます| sed 's/,$//'

于 2012-12-20T10:29:23.870 に答える