diffmk 命令

用途

标记文件的不同处。

语法

差异 [ { -abX | -aeX ] [ -b ] [ -cb X | -ce X ] [ -db X | -de X ] File1 File2 [ File3 ]

描述

diffmk 命令 比较 File1 参数指定的英文文件和 File2 参数指定的文件。 然后,它将为 nrofftroff 命令创建包含 .mc 请求 (用于创建更改标记) 的第三个文件。 File1File2 参数分别指定文件的新旧版本。 diffmk 命令将新建文件 写到 File3 参数(如果指定的话),或写到标准输出。 File3 文件包含 File2 文件以及插入的格式化程序 .mc 请求的行。 当 File3 文件 被格式化时,修改的文本或插入文本用竖线“|”在每行的右边空白处标记。 空白处的星号“*”表示该行已被删。

如果定义了 DIFFMARK 环境变量,它指定 diffmk 命令用于比较文件的命令字符串。 (正常情况下,命令 diffmk 使用命令 diff)。 例如,为了更好地处理超大文件,可以将 DIFFMARK 变量设置为diff -h.

参数

描述
File1 指定与 File2 参数指定的文件比较的英文文件。 比较结果 包含由 File3 参数指定的文件。 File1 被当作“旧”文件。
File2 指定一个英文文件,与 File1 参数指定的文件比较。 比较结果 包含由 File3 参数指定的文件。 File2 被当作“新”文件。
File3 指定包含 File2 文件的行以及 nrofftroff 命令的已插入格式化程序 .mc 请求的文件。 该文件的内容是参数 File1File2 指定的两个文件的比较结果。 格式化时,不同处用竖线“|”在每行的右边空白处标记。 星号“*”表示该行已被删除。 如果未指定 File3,那么比较结果写到标准输入。

标志

描述
-ab X X 标记从哪行开始添加。
-ae X X 标记在哪行结束。
-b 忽略只有制表符和空格符区别的行。
-cbX X 标记不同的行从哪里开始。
-ce X X 标记不同行在哪里结束。
-db X X 标记删除行从哪里开始。
-德 X X 标记删除行在哪里结束。

示例

  1. 要标记一个文本文件的两个版本的不同,请输入:
    diffmk chap1.old chap1 chap1.nroff
    这将生成以下项的副本:chap1包含 nroff troff 更改标记请求,以标识已添加,更改或删除的文本chap1.old.此副本保存在chap1.nroff中。
  2. 要用非 nrofftroff 消息标记不同,请输入:
    diffmk -ab'>>New:' -ae'<<End New' \
    chap1.old chap1 chap1.nroff
    这将导致 diffmk 命令写入 >>New:在新添加的行的一部分之前的行上chap1,<<End New在添加的行之后的行上。 不同的部分和删除部分仍然建立命令 nroff troff,以在空白处添加竖线“|”或者星号“*”。
  3. 要使用不同的 nrofftroff 命令标记请求,忽略空格字符区别,请输入:
    diffmk -b -cb'.mc %' chap1.old chap1 chap1.nroff
    此嵌入用于标记更改的命令% (百分号) 添加 | (竖线) ,删除 * (星号)。 它不会标记仅涉及不同数目的单词之间的空格或制表符的更改 (-b).