cmp命令

cmp命令用来比较两个文件是否有差异,当相互比较的两个文件完全一样时,则该指令不会输出任何信息,若发现有差异,预设会标示出第一个不同之处的字符和列数编号,若不指定任何文件名称或是所给予的文件名为-,则cmp指令会从标准输入设备读取数据。

语法

cmp [-clsv][-i <number of characters>][--help][file][file]

参数

  • -c--print-chars: 除了标明差异处的十进制字码之外,一并显示该字符所对应字符。
  • -i <number of characters>--ignore-initial=<number of characters>: 指定跳过的数目。
  • -l--verbose: 标示出所有不一样的地方。
  • -s--quiet--silent: 不显示错误信息。
  • -v--version: 显示版本信息。
  • --help: 在线帮助。

示例

比较file.txtfile2.txt文件的差异,如果文件相同,则不显示消息,如果文件不同,则显示第一个不同的位置。

cmp file.txt file2.txt

比较file.txtfile2.txt文件的差异,标出所有不同之处。

cmp -l file.txt file2.txt

比较file.txt与自定义输入内容的差异,输入内容后按Ctrl+D输出EOF标识后结束输入。

cmp file.txt -

每日一题

https://github.com/WindrunnerMax/EveryDay

参考

https://man.linuxde.net/cmp https://www.jianshu.com/p/f5963af8d796 https://www.runoob.com/linux/linux-comm-cmp.html