File1とfile2の2つのファイルを比較する必要があります。各ファイルには、|
で区切られた56列があります。最初の列はファイル内の従業員番号です。2番目のファイルに同じ従業員番号が存在するかどうかを確認します。そうでない場合は、行全体を出力ファイルに書き込みます。 file2に同じ従業員番号が存在する場合、各列の値を比較する必要があります。データが一致しない場合は、出力ファイルに書き込む必要があります。各列の値が一致する場合は、そのレコードを省略する必要があります。
サンプルファイル
ファイル1
2620|256034|131021|Mission Quality and Wipro Way|||
2622|256034|131021|Mission Quality and Wipro Way|||
2623|256034|131021|Mission Quality and Wipro Way|||
ファイル2
2620|256034|234567|Mission Quality and Wipro Way|||
2621|256034|131021|Mission Quality and Wipro Way|||
2622|256034|131021|Mission Quality|||
2623|256034|131021|Mission Quality and Wipro Way|||
サンプル出力:
2620|256034|131021|Mission Quality and Wipro Way|||
2621|256034|131021|Mission Quality and Wipro Way|||
2622|256034|131021|Mission Quality|||
ファイルがソートされている非常に簡単な場合は、diff
でタスクを実行します
comm -13 File1 File2
awk
を使用できます。例:.
awk -F'|' 'NR==FNR {a[$1]=$0;next;}; !($1 in a) || ($0 != a[$1]);' File1 File2
あなたの例を使用してFile1
およびFile2
$ awk -F'|' 'NR==FNR {a[$1]=$0;next;}; !($1 in a) || ($0 != a[$1]);' File1 File2
2620|256034|234567|Mission Quality and Wipro Way|||
2621|256034|131021|Mission Quality and Wipro Way|||
2622|256034|131021|Mission Quality|||