2つのファイルを比較し、出力に2つのファイルのユニークコンテンツ+最初のファイルの共通コンテンツを含めたいと思います。
例:-
ファイルA.txt
A=x
B=y
C=z
ファイルB.txt
A=p
D=q
E=r
出力:-
A=x
B=y
C=z
D=q
E=r
この問題を解決するのに役立ちます。すべてのコマンドまたはシェルスクリプトを使用できるように、Linuxサーバーでこれを実行したいと思います。
答え1
あなたはそれを使用することができますawk
:
$ awk -F= '{a[$1]++; if(a[$1]==1){print}}' A.txt B.txt
A=x
B=y
C=z
D=q
E=r
説明する
a[$1]++;
:最初のフィールドを配列のキーとして保存a
し、そのキーに関連付けられた値を1ずつ増やします。つまり、キーが最初に表示されるとき(たとえば、最初A=x
)、値は1になりますが、2番目は2になります。これにより、一意の要素を計算できます。if(a[$1]==1){print}
:最初のフィールドが一度だけ表示されたら印刷します。
B.txt
後で処理中なので、A.txt
の値がA.txt
保持された値です。