兩個檔案比較時, 通常都用 diff, 看 ">" 和 "<" 來看差異, 一行一行比較.
但是若檔案是兩個都唯一值, 然後都已經排完序的檔案, comm 提供其它更清楚的輸出格式.
用法: comm file1 file2
範例:
$ cat a
1
2
3
4
5
6
$ cat b
1
3
4
a
b
$ comm a b
1
2
3
4
5
6
a
b
第一欄是只在第一個檔案(a)出現的, 第二欄是只在第二個檔案(b)出現的, 第三欄是一起出現過的.
註:comm -3 a b 會比較常用
相較於 diff 的輸出, 有些時後會比 diff 好用許多~
$ diff a b
2d1
< 2
5,6c4,5
< 5
< 6
---
> a
> b
還有其它參數, 可詳見 man comm 😛
感謝 gslin 長輩提供的資訊~ diff -u 的輸出格式好很多~
$ diff -u a b
--- a 2007-05-26 08:59:43.264166746 +0800
+++ b 2007-05-26 08:59:51.024539605 +0800
@@ -1,6 +1,5 @@
1
-2
3
4
-5
-6
+a
+b