Linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。本文主要介绍Linux cmp 命令。

1、命令简介

CMP :cmp命令有用于比较两个任意类型的文件,若两个文件相同则默认不输出任何信息,若两个文件不同,则会输出第一个不同之处的字符和列数编号,结果输出到标准输出。

注意:若不指定任何文件名称或是所给予的文件名为-,则cmp命令会从标准输入设备读取数据。

2、命令用法

cmp options... FromFile [ToFile]

3、命令描述

cmp逐字符报告两个文件之间的差异,而不是逐行。因此,在比较二进制文件时,它比diff更有用。对于文本文件,cmp主要在只想知道两个文件是否相同时有用。对于相同的文件,cmp不产生输出。当文件不同时,默认情况下,cmp输出第一个差异出现的字节偏移量和行号。可以使用-s选项来抑制该信息,这样cmp就不会产生输出,并仅使用其退出状态来报告文件是否不同。与diff不同,cmp不能比较目录;它只能比较两个文件。

4、命令选项

help显示帮助
-v/--version显示版本信息
-s/--quit/--silent不显示错误信息
-l/--verbose标示出所有不一样的地方
-i/--ignore-initial指定一个数目
-c/--print-chars除了标明差异处的十进制字码之外,一并显示该字符所对应字符

5、使用示例

比较两个文件,如果文件相同,则不显示消息。如果文件不同,则显示第一个不同的位置,如下,

[root@kvm4 ~]# cmp file file1
file file1 differ: byte 3, line 2
$ cat 1.txt
https://www.cjavapy.com
$ cat 2.txt
http://www.cjavapy.com
$ cmp 1.txt 2.txt
1.txt 2.txt differ: char 5, line 1

推荐文档