書式
diff [OPTION]... FILES
説明
FILES
を行単位で比較します。
ロングオプションにおいて必須の引数であるものは、
ショートオプションにおいても必須です。
- --normal
- 通常の diff
形式で出力します
(デフォルト)。
- -q, --brief
- ファイルに違いがあった場合のみ報告します。
- -s,
--report-identical-files
- 2
つのファイルが同じであった場合に報告します。
- -c, -C NUM,
--context[=NUM]
- コンテキスト形式を使用し、
前後の NUM 行
(デフォルトは 3 行)
を出力します。
- -u, -U NUM,
--unified[=NUM]
- ユニファイド (unified)
形式を使用し、
前後の NUM 行
(デフォルトは 3 行)
を出力します。
- -e, --ed
- ed
スクリプトを出力します。
- -n, --rcs
- RCS 形式の diff
を出力します。
- -y,
--side-by-side
- 2
段組で出力します。
- -W,
--width=NUM
- NUM
カラム以内で出力します
(デフォルトは 130)。
- --left-column
- 2
段組出力において共通する行は左側のみ表示します。
- --suppress-common-lines
- 共通する行は表示しません。
- -p,
--show-c-function
- それぞれの変更箇所が、
どの C
関数内であるかを表示します。
- -F, --show-function-line=RE
- RE
に一致した直近の行を表示します。
- --label
LABEL
- ファイル名とタイムスタンプの代わりに
LABEL を使います
(複数指定可)。
- -t,
--expand-tabs
- 出力にあたってタブ文字を空白文字に展開します。
- -T,
--initial-tab
- タブ文字を出力することで、タブ位置を揃えます。
- --tabsize=NUM
- タブ位置を NUM
カラムごとに設定します
(デフォルトは 8)。
- --suppress-blank-empty
- 空の出力行に対して、空白文字やタブ文字の出力を行いません。
- -l,
--paginate
- ページ付けのために出力を
'pr' に受け渡します。
- -r,
--recursive
- 再帰的にサブディレクトリ内を比較します。
- --no-dereference
- シンボリックリンクはたどりません。
- -N, --new-file
- 存在しないファイルは空のファイルとして扱います。
- --unidirectional-new-file
- 存在しない最初のファイルは空のファイルとして扱います。
- --ignore-file-name-case
- ファイル名の比較にあたって大文字小文字を区別しません。
- --no-ignore-file-name-case
- ファイル名の比較にあたって大文字小文字を区別します。
- -x,
--exclude=PAT
- PAT
に一致するファイルを除外します。
- -X,
--exclude-from=FILE
- FILE
内に記述されているいずれかのパターンに一致するファイルを除外します。
- -S,
--starting-file=FILE
- ディレクトリ比較を行う際に
FILE
から処理を始めます。
- --from-file=FILE1
- FILE1
とすべての引数の間での比較を行います。
FILE1
はディレクトリとすることができます。
- --to-file=FILE2
- すべての引数と FILE2
との間での比較を行います。FILE2
はディレクトリとすることができます。
- -i,
--ignore-case
- ファイル内容において、大文字小文字を区別しません。
- -E, --ignore-tab-expansion
- タブ展開による違いを無視します。
- -Z,
--ignore-trailing-space
- 行末のホワイトスペースは無視します。
- -b,
--ignore-space-change
- ホワイトスペース数の違いを無視します。
- -w,
--ignore-all-space
- ホワイトスペースをすべて無視します。
- -B,
--ignore-blank-lines
- 空行だけの違いは無視します。
- -I,
--ignore-matching-lines=RE
- RE に一致する行は、
違いがないものとして無視します。
- -a, --text
- ファイルはすべてテキストファイルとして扱います。
- --strip-trailing-cr
- 入力における文末のキャリッジリターンを取り除きます。
- -D,
--ifdef=NAME
- '#ifdef NAME' diff
を使ったマージ結果を出力します。
- --GTYPE-group-format=GFMT
- GTYPE 入力グループを GFMT
を使ってフォーマットします。
- --line-format=LFMT
- 入力行を LFMT
を使ってフォーマットします。
- --LTYPE-line-format=LFMT
- LTYPE 入力グループを LFMT
を使ってフォーマットします。
- このフォーマットオプションは、
出力を詳細に制御します。
- これは -D/--ifdef
を一般化したものです。
- LTYPE は 'old',
'new', 'unchanged'
のいずれかです。
- GTYPE は、 LTYPE に 'changed'
を加えたもののいずれかです。
- GFMT において (のみ)
指定できるもの:
- %<
- FILE1 からの行
- %>
- FILE2 からの行
- %=
- FILE1 と FILE2 に共通する行
- %[-][WIDTH][.[PREC]]{doxX}LETTER
- LETTER に対する printf
風の指定
- LETTER
は、新しいグループ用に以下のものを用います。
古いグループ用には、それを小文字にしたものを用います:
- F
- 最初の行番号
- L
- 最終の行番号
- N
- 行数 = L-F+1
- E
- F-1
- M
- L+1
- %(A=B?T:E)
- A と B が等しければ
T、そうでなければ E
- LFMT において (のみ)
指定できるもの:
- %L
- 行内容
- %l
- 行内容、
ただし改行文字を除く
- %[-][WIDTH][.[PREC]]{doxX}n
- 入力行番号に対する
printf 風の指定
- GFMT, LFMT
に共通して指定できるもの:
- %%
- %
- %c'C'
- 単一の文字 C
- %c'\OOO'
- 8 進数コード OOO
の文字
- C
- 文字 C
(その他の文字は、
それ自身を表現する)
- -d, --minimal
- できるだけ小さな差分を見つけるようにします。
- --horizon-lines=NUM
- 差分の前後の共通部分を
NUM 行出力します。
- --speed-large-files
- 大きなファイルであって、小さな違いがたくさん含まれると想定して処理します。
- --color[=WHEN]
- カラー出力を行います。
WHEN は 'never', 'always', 'auto'
のいずれかです。
--color
だけを指定すると
--color='auto'
を意味します。
- --palette=PALETTE
- --color
が有効な場合に、
利用するカラーを指定します。
PALETTE は、 terminfo の機能指定
(capability)
をカンマで区切ったリストです。
- --help
- ヘルプを表示して終了します。
- -v, --version
- バージョン情報を出力して終了します。
FILES は 'FILE1 FILE2'、 'DIR1 DIR2'、 'DIR
FILE'、 'FILE DIR'
のいずれかです。
--from-file または --to-file
を指定した場合、 FILE(s)
に対する制約はありません。
FILE が '-' である場合、
標準入力から読み込みます。
終了ステータスは、
入力ファイルの内容が同じであれば
0、 異なっていれば 1、
何か問題が発生すれば
2 です。
著者
Paul Eggert, Mike Haertel, David Hayes, Richard Stallman, Len
Tower
バグ報告
バグ報告は bug-diffutils@gnu.org
までお願いします。
GNU diffutils ホームページ:
<https://www.gnu.org/software/diffutils/>
GNU
ソフトウェアの全般的なヘルプ:
<https://www.gnu.org/gethelp/>
著作権
Copyright © 2021 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.
関連項目
wdiff(1), cmp(1), diff3(1), sdiff(1), patch(1)
diff
の完全なドキュメントは
Texinfo
マニュアルとしてメンテナンスされています。
info と diff
の両プログラムが適切にインストールされていれば、
以下のコマンド
- info diff
を実行して完全なマニュアルを参照できます。