檔案比較程式: comm, diff

兩個檔案比較時, 通常都用 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

作者: Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.

在〈檔案比較程式: comm, diff〉中有 2 則留言

Tsung 發表迴響取消回覆

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料