diffmk コマンド

目的

ファイル間の相違にマークを付けます。

構文

diffmk [ { -abX | -aeX ] [ -b ] [ -cbX | -ce X ] [ -db X | -de X ] File1 File2 [ File3 ]

説明

diffmk コマンドは、File1 パラメーターで指定された英語のファイルを、 File2 パラメーターで指定された英語のファイルと比較します。 diffmk コマンドは、その後 nroff コマンドと troff コマンドに対する .mc 要求 (変更マークの作成要求) が記述された別のファイルを作成します。File1 パラメーターと File2 パラメーターは、それぞれファイルの古いバージョンと新しいバージョンを指定します。 diffmk コマンドは、新しく作成されたファイルを、指定があれば File3 パラメーターに書き込み、指定がなければ標準出力に書き出します。 File3 ファイルには、File2 ファイルの各行と挿入されたフォーマッター .mc 要求の行が入っています。File3 ファイルがフォーマットされると、変更または挿入されたテキストの各行の右マージンに | (縦線) のマークが付けられます。 マージンの * (アスタリスク) は、行が削除されたことを示します。

DIFFMARK 環境変数を定義すると、diffmk コマンドでファイルの比較に使用されるコマンド文字列が指定されます。 (通常、diffmk コマンドでは、diff コマンドを使用します。)例えば、非常に大きなファイルをより適切に処理するために、DIFFMARK 変数を diff -h に設定することができます。

パラメーター

項目 説明
File1 File2 パラメーターによって指定されたファイルと比較される英語ファイルを指定します。比較の結果から、File3 パラメーターによって指定されたファイルが構成されます。File1 は「古い」ファイルと見なされます。
File2 File1 パラメーターによって指定されたファイルと比較される英語ファイルを指定します。 比較の結果から、File3 パラメーターによって指定されたファイルが構成されます。 File2 は「新しい」ファイルと見なされます。
File3 File2 ファイルの行を含み、nroff および troff コマンドの場合の挿入されたフォーマッター .mc 要求の行を格納するファイルを指定します。 このファイルの内容は、File1 パラメーターと File2 パラメーターによって指定されたファイルの比較結果です。 変更されたテキストは、フォーマットされると、その各行の右マージンに | (縦線) のマークが付けられます。* (アスタリスク) は行が削除されたことを示します。 File3 が指定されない場合、比較の結果は標準出力に書き出されます。

フラグ

項目 説明
-abX 追加された行が始まる位置に X というマークを付けます。
-aeX 追加された行が終る位置に X というマークを付けます。
-b 行上でタブまたはスペースが変更されただけの相違を無視します。
-cbX 変更された行が始まる位置に X というマークを付けます。
-ceX 変更された行が終る位置に X というマークを付けます。
-dbX 削除された行が始まる位置に X というマークを付けます。
-deX 削除された行が終る位置に X というマークを付けます。

  1. テキスト・ファイルの 2 つのバージョン間の相違にマークを付けるには、 次のように入力します。
    diffmk chap1.old chap1 chap1.nroff
    これによって、nroff および troff 変更マーク要求を含む chap1 のコピーが作成され、chap1.old に追加されたり、chap1.old で変更されたり、chap1.old から削除されたりしたテキストが識別されます。このコピーは、chap1.nroff ファイルに保管されます。
  2. nroff 以外のメッセージと、 troff メッセージの相違点にマークを付けるには、次のように入力します。
    diffmk -ab'>>New:' -ae'<<End New' ¥
    chap1.old chap1 chap1.nroff
    これによって、diffmk コマンドは >>New: を、新たに chap1, に追加された選択行の前に書き込み、追加された行の後の行に <<End New を書き込みます。変更と削除の場合は、nroff/troff コマンドが | (縦線) または * (アスタリスク) をマージンに付けます。
  3. 別の nroff/troff コマンドのマーキング要求を使用して、 ホワイト・スペースの変更を無視するには、次のように入力します。
    
    diffmk -b -cb'.mc %' chap1.old chap1 chap1.nroff
    これによって、変更に % (パーセント記号)、追加に | (縦線)、削除に * (アスタリスク) を付けるコマンドが組み込まれます。 ワード間のスペースとタブの数が異なるだけの変更には、マークを付けません (-b)。