我们在命令行下,有时候需要了解两个文件的异同,比如和配置文件的备份文件对比. Linuxdiff 工具将非常方便的来解决我们的需求.

二进制文件的对比

对于二进制文件的对比, diff 仅仅只是提示两个文件是否异同, 如果相同, 将不输出任何内容, 实验环境是 Ubuntu 18.04, 我们对比下 /bin/sh/bin/bash/bin/dash, Ubuntu 最新版本 /bin/sh 使用的是 /bin/dash, 而不是早前的 /bin/bash.

root@server:~# diff /bin/sh /bin/bash
/bin/sh and /bin/bash differ
root@server:~# diff /bin/sh /bin/dash

文本文件对比

diff filename1 filename2

下面是diff 工具有用的一些选项:

  • -i or --ignore-case 忽略大小写
  • -e or --ignore-tab-expansion 忽略tab变更内容
  • -b or --ignore-space-change 忽略空格变更内容
  • -w or --ignore-all-space 忽略所有空格内容
  • -B or --ignore-blank-lines 忽略所有空白行

目录对比

递归对比目录下的所有内容

diff -r --brief  ~/dir1 ~/dir2
  • -r 意味着递归对比目录及其下的子目录
  • --brief 仅仅输出内容不同的文件和不存在的内容

命令行对比颜色提示

类似 grep--color 选项, 以便使用过程中颜色高亮不同内容, diff 工具自身并不包含 --color 选项, 我们可以使用 colordiff 工具来满足该需求

安装 colordiff:

sudo apt -y install colordiff

使用格式和diff保持一致:

colordiff filename1 filename2

【腾讯云】境外1核2G服务器低至2折,半价续费券限量免费领取!
https://cloud.tencent.com/act/cps/redirect?redirect=1068&cps_key=e4b50f6c64a4480367f8a8d16fd07c5a&from=console

标签: diff, 对比工具

添加新评论