使用法: diff3 [オプション]... MYFILE OLDFILE YOURFILE
3つのファイルを行ごとに比較します。
-e --ed OLDFILEからYOURFILEへのMYFILEにたいする未併合の変更を出力。
-E --show-overlap 衝突をくくり、未併合の変更を出力。
-A --show-all 衝突をくくり、全変更を出力。
-x --overlap-only 重複した変更を出力。
-X 衝突をくくりながら、変更を出力。
-3 --easy-only 衝突していない、未併合の変更を出力。
-m --merge edスクリプトの代わりに、併合したファイルを出力 (既定は-A)。
-L LABEL --label=LABEL ファイル名の代わりにLABELを使用。
-i edスクリプトの後に「w」と「q」コマンドを追加。
-a --text すべてテキストとして処理。
-T --initial-tab タブで始まる行は、前にタブを置いて揃える。
--diff-program=PROGRAM ファイルの比較にPROGRAMを使用。
-v --version バージョン情報を出力。
--help この説明を出力。
ファイルが「-」のとき、標準入力を読みます。
バグを見つけたら
Usage: diff3 [OPTION]... MYFILE OLDFILE YOURFILE
Compare three files line by line.
-e --ed Output unmerged changes from OLDFILE to YOURFILE into MYFILE.
-E --show-overlap Output unmerged changes, bracketing conflicts.
-A --show-all Output all changes, bracketing conflicts.
-x --overlap-only Output overlapping changes.
-X Output overlapping changes, bracketing them.
-3 --easy-only Output unmerged nonoverlapping changes.
-m --merge Output merged file instead of ed script (default -A).
-L LABEL --label=LABEL Use LABEL instead of file name.
-i Append `w' and `q' commands to ed scripts.
-a --text Treat all files as text.
-T --initial-tab Make tabs line up by prepending a tab.
--diff-program=PROGRAM Use PROGRAM to compare files.
-v --version Output version info.
--help Output this help.
If a FILE is `-', read standard input.
Report bugs to
DIFF3(1) DIFF3(1)
名前
diff3 - 3 つのファイル間にある違いを探す
書式
diff3 [-3aeimxAETX] [-L LABEL] [--easy-only] [--ed] [--initial-tab]
[--label=LABEL] [--merge] [--overlap-only] [--show-all] [--show-over-
lap] [--text] MINE OLDER YOUR
diff3 [-v] [--help] [--version]
説明
diff3 は 3 つのファイルを比較し、それらの違いの説明を出力する。
比 較対象となるファイルは MINE, OLDER, YOURS である。これら三つのファイ
ルのうちの一つを ‘-’ としてもよく、その場合そのファイルは標準入力から読
み込まれる。
通 常 diff3 は自分の作業のために diff を起動する。しかし BDIFF 環境変数
に他のプログラムを設定すれば、そのプログラムを使うように変更できる。
オプション
-3, --easy-only
-e と似ているが、重複していない変更部分だけを出力する。
-a, --text
ファイルがテキストには見えないような場合でも、全てのファイルをテ
キストとみなして 1 行ずつ比較を行う。
-e, --ed
OLDER から YOURS へのすべての変更を MINE にマージするような ed
スクリプトを生成する。
-i System V 互換性のために、 ed スクリプトの末尾に ‘w’ コマン ド と
‘q’ コマンドを生成する。このオプションは -AeExX3 のいずれかのオ
プションと共に用いなければならない。また -m と同時に指定すること
はできない。
-m, --merge
ed スクリプトを 1 番目のファイルに適用し、その結果を標準出力に送
る。 diff3 の出力を ed に送るのと異なり、このオプションの動作 は
バイナリファイルや改行されていない行にも適用できる。 ed スクリプ
トのオプションが何も指定されなければ、 -A を暗黙のうちに指定する
。
-x, --overlap-only
-e と似ているが、重複している変更だけを出力する点が異なる。
-A, --show-all
OLDER から YOURS への全ての変更を MINE にマージする。重複してい
る変更はブラケット行で囲って出力する。
-E, --show-overlap
-e と似ているが、重複部分のブラケット行の第 1・第 3 行が異なる。
-E では重複している変更は以下のようになる。
<<<<<<< MINE
lines from MINE
=======
lines from YOURS
>>>>>>> YOURS
-L LABEL, --label=LABEL
-A, -E, -X オプションのブラケット行に、ラベル LABEL を用いる。こ
のオプションはそれぞれの入力ファイルに対応して 3 つまで与える こ
とができる。デフォルトのラベルは入力ファイルのファイル名である。
したがって diff3 -L X -L Y -L Z -m A B C は diff3 -m A B C と 同
じように動作するが、入力が A, B, C ではなく X, Y, Z のものである
かのような出力となる。
-T, --initial-tab
-X -E と似ているが、重複している変更だけを出力する点が異なる。別 の
言い方をすれば、 -x と似ているが、 -E のように変更をブラケット行
で囲う点が異なる。
--help 標準出力に使用方法のメッセージを出力して正常終了する。
-v, --version
diff3 のバージョン番号を出力する。
出力形式
それぞれの hunk (違いを表すテキストブロック) は ‘====’ という行から始ま
る 。 3 ファイルとも異なる hunk ではただの ‘====’ となり、 1 ファイルが
異なっている hunk では ‘1’, ‘2’, ‘3’ のいずれかが、その異なっているファ
イ ルを示すために付加される。 hunk には 2 つ、または 3 つの入力行のセッ
トが含まれ、それぞれに行セットがどのファイル由来のものかを示す 1 つまた
は 2 つのコマンドが前置される。デフォルトの動作では、入力行の前には 2
つのスペースが置かれ、コマンドと区別できるようになっている。 -T が指 定
さ れると、代わりにタブを用いるので、入力にあったタブによる桁揃えが正し
く保存される。
コマンド形式
FILE:La
この hunk は FILE の L 行以降に現れるべきもので、そのファイル に
は存在していない。このファイルを修正して他のファイルと同じにする
には、他の行からの hunk の行を追加しなければならない 。 例 え ば
‘1:11a’ は、その hunk はファイル 1 の 11 行目以降に追加すべきも
ので、ファイル 1 には含まれていないこと示す。
FILE:Rc
この hunk には、 FILE の行範囲 R が含まれている。行範囲 R は 2
つ の行番号をコンマで区切ったものである。数字が一つだったら 1 行
だけの範囲と解釈される。このファイルを編集して他のファイルと同じ
にするには、その行範囲を、他のファイルからとってきて変更しなけれ
ばならない。例えば ‘2:11,13c’ は、この hunk は 2 番目のファイ ル
の 11〜13 行目からとってきたものであることを示す。
入力行セットの最後の行が改行で終わっていない場合は、出力の次の行
が ‘\’ で始まるので、改行で終わっている場合と区別できる。
返り値
diff3 は以下のどれかの値で終了する:
0 diff3 は成功し、重複している変更 (衝突) は存在しなかった。
1 重複が見付かった。
2 何らかのエラーが起こった。
関連項目
cmp(1), comm(1), diff(1), ed(1), patch(1), sdiff(1),
注意
プログラムのバグについては bug-gnu-utils@gnu.org に報告してください。ペ
ージの更新は Ragnar Hojland Espinosa
DIFF3(1) User Commands DIFF3(1)
NAME
diff3 - compare three files line by line
SYNOPSIS
diff3 [OPTION]... MYFILE OLDFILE YOURFILE
DESCRIPTION
Compare three files line by line.
-e --ed
Output unmerged changes from OLDFILE to YOURFILE into MYFILE.
-E --show-overlap
Output unmerged changes, bracketing conflicts.
-A --show-all
Output all changes, bracketing conflicts.
-x --overlap-only
Output overlapping changes.
-X Output overlapping changes, bracketing them.
-3 --easy-only
Output unmerged nonoverlapping changes.
-m --merge
Output merged file instead of ed script (default -A).
-L LABEL --label=LABEL
Use LABEL instead of file name.
-i Append ‘w’ and ‘q’ commands to ed scripts.
-a --text
Treat all files as text.
-T --initial-tab
Make tabs line up by prepending a tab.
--diff-program=PROGRAM
Use PROGRAM to compare files.
-v --version
Output version info.
--help Output this help.
If a FILE is ‘-’, read standard input.
AUTHOR
Written by Randy Smith.
REPORTING BUGS
Report bugs to
Copyright(C) linux-cmd.com All Rights Reserved. Author Takayuki Yukawa