GNU/Linux >> Linux の 問題 >  >> Linux

見やすくするために差分出力を色付けする方法

Linuxコマンドラインで2つのファイルの違いを確認したい場合は、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などのターミナルベースのテキストエディタを使用してファイルを編集し、すべてのカスタムエイリアスを1か所に追加する必要があります。

エイリアスを〜/ .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のヒントがお役に立てば幸いです。今後ともよろしくお願いいたします。


Linux
  1. Linuxでコマンド出力をファイルに保存する方法

  2. コマンドの出力をシェル変数に割り当てる方法は?

  3. Linux で特定のユーザーに対して特定のコマンドを無効にする方法

  1. diff コマンドのいくつかの違いを無視するには?

  2. Linux で diff の結果を保存する方法

  3. svnでvimdiffスタイルでsvn diffを表示する方法

  1. Linuxコマンド出力をファイルに出力するには?

  2. Linux の「スクリプト」コマンドの出力をクリーンアップする方法

  3. コマンドと出力の異なる色