diff对比md5文件输出结果中|符号的含义是什么?
diff 并排对比模式下
| 符号的含义 你使用的diff -yb --suppress-common-lines --width=250命令中,-y(全称--side-by-side)参数指定了左右并排对比的输出模式,|是该模式下特有的差异标记,官方说明在diff文档的「并排输出格式」章节。
并排模式的行标记规则如下:
- 左右两个文件的对应行内容完全一致:中间用空格分隔(你添加了
--suppress-common-lines参数,这类相同行已被过滤,不会出现在输出结果中) - 左右两个文件的对应行内容存在差异:中间用
|分隔 - 仅在左侧第一个文件存在的行:行末显示
<(该标记含义你已了解) - 仅在右侧第二个文件存在的行:行首显示
>
场景补充说明
diff是纯文本逐行对比工具,不会识别输入文件是md5校验清单,也不会自动拆分校验和、文件名字段做跨行匹配。你看到的「校验和匹配但文件名不同的行显示|」,本质是这两行分别位于两个文件的同一行位置,且完整行的文本内容不完全一致,所以被判定为不同行,触发|标记。
内容的提问来源于stack exchange,提问作者Bleakley
相关产品推荐
相关产品推荐

