大龙的博客

常用链接

统计

最新评论

Linux命令学习(八):比较文件内容的命令

comm:用于对已经排序的两个文件进行逐行比较。格式如下:
comm [-123] 文件1 文件2
生成三列,分别是仅在文件1中的行,仅在文件2中的行,共有的行。
如果文件名为“-”,则从标准输入中读取(通常是键盘)。选项-123,分别表示不显示输出内容的第1,2,3列。

diff命令,与comm相比比较复杂,则不要求文件预先排序。通常格式如下:
diff [选项] 文件1 文件2
说明一下,这个命令按行比较两个文件,列出不同之处,且会指出如果想让文件一致,需要做哪些修改。如果文件相同,则没有输出。一般输出的格式如下:
n1        a   n3,n4
n1,n2   d   n3
n1,n2   c   n3,n4
意思是这样的:如果把文件1中第n1行到某某行(或者为n2行,或者为末尾)改成文件2中的n3行到某某行(或者为n4行,或者为末尾),那么两个文件就相同了---------这种格式的输出可能会出现多次,意思是多次修改后才会相同。

以“<”打头的行属于文件1,以“>”打头的行属于文件2。

选项:
-b:忽略行尾空格,字符串的空白符都看成相等的。
-c:输出格式是带上下文的三行格式
-C n:输出格式是带上下文的n行格式
-r:当文件1与文件2都是目录时,递归比较找到的各子目录。

posted on 2011-05-09 18:33 大龙 阅读(229) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理