# comm -12 /tmp/src /tmp/txt | wc -l
10338
# join /tmp/src /tmp/txt | wc -l
10355
両方のファイルは、英数字の文字列とsort
-edの単一の列です。それらは同じであるべきではありませんか?
以下の@Kevin-sの回答を更新しました:
cat /tmp/txt | sed 's/^[:space:]*//' > /tmp/stxt
cat /tmp/src | sed 's/^[:space:]*//' > /tmp/ssrc
そして結果:
#join /tmp/ssrc /tmp/stxt | wc -l
516
# comm -12 /tmp/ssrc /tmp/stxt | wc -l
513
-s ...を手動で検査すると、diff
によって削除されなかった空白がいくつかあるため、結果が異なりますsed
。