Provided by: manpages-ja_0.5.0.0.20210215+dfsg-1_all
名前
sdiff - 2 つのファイルの違いを見つけ、対話的にマージを行う
書式
sdiff [-abdilstBEHW] [-o OUTFILE] [-w COLUMNS] [-I REGEXP] [--diff-program=PROGRAM] [--expand-tabs] [-ignore-all-space] [-ignore-blank-lines] [--ignore-case] [--ignore-matching-lines=REGEXP] [--ignore-space-change] [--ignore-tab-expansion] [--left-column] [--minimal] [--output=OUTFILE] [--speed-large-files] [--strip-trailing-cr] [--supress-common-lines] [--text] [--width=COLUMNS] FROMFILE TOFILE sdiff [-v] [--help] [--version]
説明
sdiff は 2 つのファイルをマージする。 -o が指定されている場合は対話的にマージした結果を OUTFILE に出力する。それ以外の場合は side-by-side 形式で違いを表示するだけである。 FROMFILE がディレクトリで TOFILE がディレクトリでない場合、 sdiff は FROMFILE にある、ファ イル名が TOFILE と同じものを比較の対象にする (逆も同じ)。 FROMFILE と TOFILE の両方にディ レクトリを指定することはできない。 入力ファイルに `-' を用いることはできない。 [訳注: 多く のコマンドでは `-' は標準入力の意味になる] 通常 sdiff は diff を呼び出して処理を行う。 しかし DIFF 環境変数を他のプログラムに設定すれ ば、そのプログラムを使うように変更できる。 また EDITOR 環境変数を設定すると、使用するエ ディタも変更できる。
オプション
-a, --text テキストのように見えないファイルがあっても、 全てのファイルをテキストとみなして 1 行ずつ比較していく。 -b, --ignore-space-change 空白の数の違いを無視する。 -d, --minimal アルゴリズムを変更する (おそらく小さな違いも見付かるようになる)。 これを用いると sdiff は遅くなる (時には非常に遅くなる)。 -i, --ignore-case 英大文字と小文字の違いを無視する。 -l, --left-column 共通の行に対しては、左側の列だけを表示する。 -o OUTFILE, --output=OUTFILE マージされた出力を OUTFILE に書き込む。マージを行うためにはこのオプションが必要であ る。 -s, --suppress-common-lines 共通な行を表示しない。 -t, --expand-tabs 出力でタブ文字をスペースに変換する。 入力ファイルでのタブ文字による桁揃えが保存され る。 -w COLUMNS, --width=COLUMNS 出力の幅を COLUMNS 桁にする。 歴史的な理由から、 diff(1) ではこのオプションは -W に なっていることに注意。 -B, --ignore-blank-lines 空行を挿入・削除するだけの違いは無視する。 -E, --ignore-tab-expansion タブ展開によるスペースの変更を無視する。 -H, --speed-large-files 小さな変更が大量にあるような大きなファイルを高速に扱うために、 発見的推測手法を用い る。 -I REGEXP, --ignore-matching-lines=REGEXP 正規表現 REGEXP にマッチした行を挿入・削除するだけの違いは無視する。 -W 行の比較の際に空白を無視する。 歴史的な理由から、 diff(1) ではこのオプションは -w になっていることに注意。 --diff-program= PROGRAM ファイルの比較するために diff と互換性のある 外部プログラム PROGRAM を用いる。 --strip-trailing-cr 行末の CR を取り除く。 行末のマーカとして CRLF を使うシステムの出力を処理するときに 役立つ。 --help 標準出力に使用方法のメッセージを出力して正常終了する。 -v, --version sdiff のバージョン番号を出力する。
マージ
共通行のブロック (空白の「のど (gutter)」を挟んで左右に表示される) は、 1 番目のファイルか ら出力にコピーされる。 差異のある行ブロックのあとでは、 sdiff は `%' をプロンプトとして出 して一時停止し、 以下のコマンドのどれか 1 つが入力されるのを待つ。 [訳注]: 「のど (gutter)」とは、印刷用語で左右のページの間にある部分 (すなわち、 折り目にな るところ) を指す。このマニュアルでは、対応する行の中間にある、 区切り記号を置く場 所を意味している。詳細については、 diff(1) の「side-by-side 形式」を参照すること。 e 両方のバージョンとも捨てる。内容が空の一時ファイルをテキストエディタで開き、 エ ディタ終了後のファイルの内容を出力にコピーする。 eb 両方のバージョンを結合した結果をエディタで編集し、 終了後の内容を出力にコピーす る。 ed `eb', と似ているが、各バージョンのブロックの前にヘッダを置き、 どのファイルのどの 行のものかがわかるようにする。 el 左側のバージョンをエディタで編集し、 終了後の内容を出力にコピーする。 er 右側のバージョンをエディタで編集し、 終了後の内容を出力にコピーする。 l 左側のバージョンを出力にコピーする。 q 終了する。 r 右側のバージョンを出力にコピーする。 s 共通な行を表示せずにコピーする。 v 共通な行を表示しながらコピーする。デフォルト。
返り値
sdiff は以下のどれかの値で終了する: 0 sdiff は成功し、差異は存在しなかった。 1 差異が見付かった。 2 何らかのエラーが起こった。
関連項目
cmp(1), comm(1), diff(1), diff3(1)
注意
プログラムのバグについては bug-gnu-utils@gnu.org に報告してください。 ページの更新は Ragnar Hojland Espinosa <ragnar@ragnar-hojland.com> が行っています。