commが期待した結果を示していません。

commが期待した結果を示していません。

複数のファイルがあります(ファイル1.txtそしてファイル2.txt)そして私はunix "comm"コマンドを使ってこれらのファイルを比較し、file1.txtで一意の行を見つけます。

以下はfile1.txtの行です。

OD1
EN2
OD3
OD4
OD5
EN6
EN7
EN8
EN9
OD10
OD11
OD12

以下はfile2.txtの行です。

EN1
EN2
EN3
OD4
OD5
EN6
EN7
EN8
EN9
OD10

私が使用するコマンドは次のとおりです。

comm -23 file1.txt file2.txt

実際

結果:

OD1 
OD10
OD11
OD12
OD3

予想する

私はそれを楽しみにしています:

OD1 
OD11
OD12
OD3

期待される結果を得る方法を教えてください。

ベストアンサー1

ファイルはアルファベット順にソートする必要があります。それ以外の場合はcomm動作しません。

順番に並べ替えてもう一度やり直してください。

または以下を使用してください。

comm -23 <(sort file1.txt) <(sort file2.txt)  

おすすめ記事