2つのファイルの比較[閉じる]

2つのファイルの比較[閉じる]

データがパイプで区切られた2つのファイルを比較したいと思います|。どちらのファイルも同じ結果を持ちますが、一部のフィールドのみが異なる場合があります。

ファイル1:

A|B|C|D

ファイル2:

A|B|F|D

2つのファイルをフィールドごとに比較したいです。つまり、列3を省略した場合、結果に違いはありません。

違い(ある場合)を知りたいです。私が言及したいくつかの列を除いて。

答え1

を使用して不要な列を削除できますcut。マニュアルページから:

   -d, --delimiter=DELIM
          use DELIM instead of TAB for field delimiter

   -f, --fields=LIST
          select  only  these  fields;   also  print any line that contains 
          no delimiter character, unless the -s option is specified

   --complement
          complement the set of selected bytes, characters or fields

これを使用して、比較できる一時ファイルを作成できますdiff

cut -d'|' -f 3 --complement <file1 >file1.tmp
cut -d'|' -f 3 --complement <file2 >file2.tmp
diff file1.tmp file2.tmp

関連情報