上: Invoking diff


13.1 diffへのオプション

以下は,gnu diffが受け入れるすべてのオプションの概要です. ほとんどのオプションは二つの等価な名前があり,一つは`-'が前置された 単一文字で,もう一つは`--'が前置されている長い名前です.複数の(引数 を取らない) 単一文字のオプションを,単一のコマンドラインの単語に組み合わ せることが可能です.-ac-a -cと等価です.長い名前のオ プションは,その名前のユニークな前方部分で省略することが可能です.カッコ ([と])は,オプションで引数を取るオプションを示します.

-a
--text
ファイルがテキストのようには見えない場合でも,すべてのファイルをテキスト として扱い,行単位で比較します.See Binary.
-b
--ignore-space-change
空白の量による変更を無視します.See White Space.
-B
--ignore-blank-lines
空白行の挿入や削除のみの変更を無視します.See Blank Lines.
--binary
バイナリモードでデータを読み書きします.See Binary.
-c
周りの三行を表示しながら,周りの文を使用した出力書式を使用します. See Context Format.
-C lines
--context[=lines]
周りのlines行(整数),またはlinesが与えられていない場合は三行 を表示しながら周りの文を使用した出力書式を使用します.See Context Format. 適切に処理するため,通常patchは少なくとも二行必要で す.

古いシステムでは,diffは,時代遅れの-c-pと 組み合わせたとき効果がある-linesをサポートしています. posix 1003.1-2001 (see Standards conformance)では,これを許可し ていません.代わりに-C linesを使用してください.

--changed-group-format=format
if-then-else書式で,両方のファイルの異なっている部分の行グループを出力す るためformatを使用します.See Line Group Formats.
-d
--minimal
変更の組がより小さくなるように探すアルゴリズムに変更します.これで diffはより遅く(時には非常に遅く)なります.See diff Performance.
-D name
--ifdef=name
マクロ名のポリプロセッサの条件式となる,マージされた`#ifdef'書式の 出力を生成します.See If-then-else.
-e
--ed
有効なedスクリプトとなる出力を生成します.See ed Scripts.
-E
--ignore-tab-expansion
タブの展開による変更を無視します.See White Space.
-f
--forward-ed
edスクリプトのように見える出力を生成しますが,ファイルでの順序 は変更されています.See Forward ed.
-F regexp
--show-function-line=regexp
周りの文を使用したり一体化した書式で,それぞれの差異のhunkに対し, regexpにマッチしたそれ以前にある最後の行を表示します.
--from-file=file
fileをそれぞれのオペランドと比較します.fileはディレクトリで もかまいません.
--help
使用方法の概要を出力し終了します.
--horizon-lines=lines
共通の最初の部分の最後のlines行と共通の終りの部分の最初の lines行を削除しません.See diff Performance.
-i
--ignore-case
大文字小文字の変更を無視します.大文字と小文字は等価だと考えます. See Case Folding.
-I regexp
--ignore-matching-lines=regexp
regexpにマッチする行の挿入と削除だけの変更を無視します. See Specified Folding.
--ignore-file-name-case
再帰的な比較でファイル名を比較している時,大文字小文字を無視します. See Comparing Directories.
-l
--paginate
ページ付けするために出力をprに渡します.See Pagination.
-L label
--label=label
周りの文を使用した書式(see Context Format)と一体化した書式 (see Unified Format)のヘッダで,ファイル名の代わりにラベルを使用しま す.See RCS.
--left-column
横に並べた書式で,二つに共通な行を左の列だけに出力します.See Side by Side Format.
--line-format=format
if-then-else書式で,すべての入力行を出力するためformatを使用します. See Line Formats.
-n
--rcs
rcs書式の差分を出力します.-fに似ていますがそれぞれのコマ ンドは作用する行番号を指定します.See RCS.
-N
--new-file
ディレクトリの比較で,ファイルが一方のディレクトリだけで見つかった場合, もう一方には空のものが存在しているかのように処理します.See Comparing Directories.
--new-group-format=format
if-then-else書式で,二番目のファイルからの行のグループを出力するために, formatを使用します.See Line Group Formats.
--new-line-format=format
if-then-else書式で,二番目のファイルからの行を出力するために, formatを使用します.See Line Formats.
--old-group-format=format
if-then-else書式で,最初のファイルからの行のグループを出力するために, formatを使用します.See Line Group Formats.
--old-line-format=format
if-then-else書式で,最初のファイルからの行を出力するために,format を使用します.See Line Formats.
-p
--show-c-function
変更があったそれぞれのC関数を表示します.See C Function Headings.
-q
--brief
ファイルに差異があるかどうかを報告するだけで,差異を詳述しません. See Brief.
-r
--recursive
ディレクトリの比較時に,見つかったすべてのサブディレクトリを再帰的に比較 します.See Comparing Directories.
-s
--report-identical-files
二つのファイルが同じとき報告します.See Comparing Directories.
-S file
--starting-file=file
ディレクトリの比較時に,ファイルfileから開始します.これは,中止さ れた比較を再開するために使用します.See Comparing Directories.
-H
--speed-large-files
小さな変更が大量にある大きなファイルの処理を高速化するため,発見的手法を 使用します.See diff Performance.
--strip-trailing-cr
入力行の最後に後置される改行を削除します.See Binary.
--suppress-common-lines
横に並べた書式で,共通の行を出力しません.See Side by Side Format.
-t
--expand-tabs
入力ファイルのタブによる位置合わせ保持するため,出力のタブをスペースに展 開します.See Tabs.
-T
--initial-tab
通常または周りの文を使用する書式で,行のテキストの前にスペースではなくタ ブを出力します.これで行のタブでの位置合わせが通常通りに見えます. See Tabs.
--to-file=file
それぞれのオペランドをfileと比較します.fileはディレクトリで もかまいません.
-u
一体化した出力書式を使用し,周りの文を三行表示します.See Unified Format.
--unchanged-group-format=format
if-then-else書式で,両方のファイルからの共通の行のグループを出力するため に,formatを使用します.See Line Group Formats.
--unchanged-line-format=format
if-then-else書式で,両方のファイルに共通な行を出力するために, format を使用します.See Line Formats.
-P
--unidirectional-new-file
ディレクトリの比較時に,二つのうち二番目のディレクトリだけにファイルがあ る場合,もう一方には空のファイルが存在しているかのように扱います. See Comparing Directories.
-U lines
--unified[=lines]
周りのlines行(整数),またはlinesが与えられていない場合は三行 を表示しながら一体化した出力書式を使用します.See Unified Format. 適 切に処理するため,通常patchは少なくとも二行必要です.

古いシステムでは,diffは,時代遅れの-uと組み合わせた とき効果がある-linesをサポートしています.posix 1003.1-2001 (see Standards conformance)では,これを許可していません. 代わりに-U linesを使用してください.

-v
--version
バージョン情報を出力し終了します.
-w
--ignore-all-space
行の比較時に空白を無視します.See White Space.
-W columns
--width=columns
横に並べた書式で,行ごとに最大columns行(デフォルトは130)出力します. See Side by Side Format.
-x pattern
--exclude=pattern
ディレクトリの比較時に,ベース名がpatternにマッチするファイルとサ ブディレクトリを無視します.See Comparing Directories.
-X file
--exclude-from=file
ディレクトリの比較時に,ベース名がfileに含まれているパターンにマッ チするファイルとサブディレクトリを無視します.See Comparing Directories.
-y
--side-by-side
横に並べた書式を使用します.See Side by Side Format.