如何为Diff输出着色以提高文本可读性

当您想在Linux命令行上查看两个文件之间的差异时,可以使用Diff命令。

如果您是初学者,那么了解diff命令的输出可能会很棘手。 高亮显示不同颜色的变化将帮助您轻松注意到变化。

您可以使用–color参数为diff输出着色,如下所示:

diff --color file1.txt file2.txt

根据终端调色板的颜色,这将以不同的颜色打印差异颜色输出。

不断使用色彩差异输出

每次运行diff时键入–color都是很乏味的。 如果要始终看到diff命令的彩色输出,则可以在Linux中轻松使用别名。

alias diff="diff --color"

要使该别名永久生效,请将上述别名命令添加到〜/ .bashrc文件中(假设您正在使用bash命令)。

如果您很懒,可以使用echo命令将别名添加到.bashrc文件的末尾:

echo "alias diff="diff --color" " >> ~/.bashrc

但是,您应该使用基于终端的文本编辑器(例如Vim或Nano)来编辑文件并将所有自定义别名添加到一个位置。

将别名添加到〜/ .bashrc文件后,使用source命令使更改立即生效:

source ~/.bashrc

diff是否没有–color选项? 这就是您可以做的!

–color参数包含在3.4版的diff中。 如果在diff命令中使用此选项时看到错误消息,则应首先检查diff命令的版本:

diff --version

它应该显示以下输出:

[email protected]:~$ diff --version
diff (GNU diffutils) 3.7
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Paul Eggert, Mike Haertel, David Hayes,
Richard Stallman, and Len Tower.

如果您使用的是diff版本3.3或更早版本,则必须诉诸使用diff命令获取颜色输出的其他方法。

您可以使用名为colordiff的便捷实用程序。 基本上,它是用Perl编写的diff命令的包装。

您应该在Linux发行版的软件包管理器中找到colordiff。 在Debian / Ubuntu上,您可以使用以下命令进行安装:

sudo apt install colordiff

安装后,可以与diff命令相同的方式使用它。

colordiff file1.txt file2.txt

没有那么困难,没有那么困难。 是不是?

有一个方便的实用程序ydiff,它使您可以并行查看文件之间的差异。

我们希望这个Linux小技巧对您有所帮助。 请随时关注更新,并保持订阅以了解更多信息。

Sidebar