diff v3.12版本--from-file选项疑似存在功能异常问题
diff v3.12(OpenSUSE Tumbleweed)中
--from-file/--to-file选项的异常问题 问题现象
在OpenSUSE Tumbleweed系统上使用diff v3.12时,--from-file和--to-file选项存在不符合预期的行为:
- 执行命令
diff FILE1 FILE2 FILE3 --from-file OTHER-DIR/(目录名后带或不带斜杠均如此),仅FILE1会与OTHER-DIR/下的对应文件完成对比;FILE2、FILE3会触发错误提示diff: OTHER-DIR: No such file or directory,但实际所有文件和目录均存在。 - 移除FILE1后重新执行命令,仅FILE2会被正常对比,剩余文件仍会抛出上述错误。
- 该命令逻辑在旧版本diff中可正常运行,长期使用从未出现此类问题。
复现脚本
# 创建测试文件与目录 mkdir -p other-dir for f in {,other-dir/}file{1,2,3}.tmp; do echo "$f" > "$f"; done # 测试--from-file选项 diff file{1,2,3}.tmp --from-file other-dir/ # 测试--to-file选项 diff file{1,2,3}.tmp --to-file other-dir/ # 清理测试资源 rm -r file{1,2,3}.tmp other-dir/
结论
这是diff v3.12版本的一个明确bug,建议:
- 提交问题至diff工具的官方bug跟踪系统,提供上述复现步骤协助开发者定位修复;
- 临时降级至之前的稳定版本以恢复正常功能。
内容的提问来源于stack exchange,提问作者Wiimm
相关产品推荐
相关产品推荐

