【发布时间】:2016-07-09 14:16:59
【问题描述】:
最近几天我在 Windows Batch 上使用 comm 做了很多事情来比较彼此的文本文件。所以正常情况下我没有什么可以做错的。在我的其他项目中,下面的代码工作正常,但在实际情况下却不行,我看不出有任何原因。
好吧,我对 comm 的了解是,需要对两个文件进行排序,所以我为这两个文件添加了它,现在我尝试比较 New File > 与 Archive 并且输出应该是 NOT 在 all.txt 中
D:/filetype/core/sort.exe -b D:\filetype\test\all.txt -oD:\filetype\test\all.txt
D:/filetype/core/sort.exe -b D:\filetype\test\listfile_export_tmp2.txt -oD:\filetype\test\listfile_export_tmp2.txt
D:/filetype/core/comm.exe -2 -3 D:\filetype\test\listfile_export_tmp2.txt D:\filetype\test\all.txt > D:\filetype\test\output.txt
为了测试,我添加了我想与 all.txt 进行比较的文本,因此输出应该为零,因为这里没有什么新东西。但作为 output.txt 的结果正是我在第一个文本文件中得到的。我手动检查了 all.txt,我尝试比较的这些行都在里面,我检查了排序是否与测试文件和不同的字母一起正常工作。
这就是我的想法
- 在我的其他项目中存在我看不到的差异。它是 我的错
- 如果一个文本文件太小,Comm 无法比较两个文件,我尝试比较一个 50MB 的文件和一个 1KB 的文件
我可以根据要求提供这两个文件进行测试
【问题讨论】:
标签: sorting batch-file comm