diff3 コマンド

目的

3 つのファイルを比較します。

構文

diff3 [ -e | -x | -E | -X | -3 ] File1 File2 File3

説明

diff3 コマンドは 3 つのファイルを比較して、異なるテキストの範囲を次のコードのフラグを付けて標準出力に書き出します。

項目 説明
==== 3 つのファイルがすべて異なります。
====1 File1 が異なります。
== 2 File2 が異なります。
====3 File3 が異なります。

あるファイルのある範囲を、別のファイルに適合するように変換する場合に必要な変更の種類は、次の 2 つの出力方法のどちらかで示されます。

項目 説明
ファイル:Number1 a テキストは File 内の行番号 Number1 の後に追加されます。ここで、File12、または 3 です。
ファイル:Number1[,Number2]c Number1 から行 Number2 までの範囲内のテキストが変更されます。 Number1Number2 が同じ場合は、 範囲は Number1 と省略できます。

範囲の内容は、c の表示後に表示されます。 2 つのファイルの内容が同一の場合、 diff3 コマンドは、それぞれの同一行の位置は表示しますが、付けられている番号が小さい方のファイルの内容は表示しません。

注: -e フラグによって作成された編集スクリプトは、a から成る行を作成できません。 (ピリオド) です。

フラグ

項目 説明
-3 ====3 のフラグが付いた変更だけを組み込むための編集スクリプトを作成します。
-E -X これらは、それぞれ -e および -x と似ていますが、オーバーラップする変更 (つまり、通常のリストで == == のフラグが立てられる変更) は異なる方法で処理されます。 両方のファイルの重複している行が、編集スクリプトによって挿入され、<<<<<< という行と >>>>>> という行で 囲まれます。 -E オプションは、 リビジョン・コントロール・システム (RCS) マージによって使用され、 マージされたファイル内で重複している変更を必ず保存して、ユーザーに知らせます。
-e ed コマンドで使用する編集スクリプトを作成して、 File1File2File3 の間のすべての変更 (つまり、通常はフラグが立てられる変更 == == および == == 3) を取り込みます。
-x ==== のフラグが付いた変更だけを組み込むための編集スクリプトを生成します。

3 つのファイル間の相違を表示するには、次のように入力します。

diff3 fruit.a fruit.b fruit.c

指定する場合は、fruit.a,fruit.bおよびfruit.c以下のデータが含まれています。

fruit.a                fruit.b                 fruit.c
banana                 apple                   grape
grape                  banana                  grapefruit
kiwi                   grapefruit              kiwi
lemon                  kiwi                    lemon
mango                  orange                  mango
orange                 peach                   orange
peach                  pear                    peach
pare

diff3 コマンドからの出力は、これらのファイル間の相違を次のように示します (右側のコメントは出力されません)。

====            All three files are different.
1:1,2c          Lines 1 and 2 of the first file, fruit.a
  banana
  grape
2:1,3c          Lines 1 through 3 of fruit.b
  apple
  banana
  grapefruit
3:1,2c          Lines 1 and 2 of fruit.c
  grape
  grapefruit
====2           The second file, fruit.b, is different.
1:4,5c          Lines 4 and 5 the same in fruit.a and fruit.c.
2:4a            To make fruit.b look same, add after line 4.
3:4,5c
  lemon
  mango
====            The first file, fruit.a, is different.
1:8c
  pare
2:7c            fruit.b line 7 and fruit.c line 8 are the same
  pear
3:7a

ファイル

項目 説明
/usr/bin/diff3 diff3 コマンドを示します。
/usr/lbin/diff3prog diff3 シェル・スクリプトによって呼び出されます。