【问题标题】:Comparing two folders for non identical files in CMD比较 CMD 中不同文件的两个文件夹
【发布时间】:2012-03-17 23:56:35
【问题描述】:

我需要做的是用DOS命令比较CMD中不同文件的两个文件夹。

当我发现不完全相同的文件时,我需要将它们写入具有完整路径的 .txt 文件中,以便找出这些文件的实际包含位置。

那么我该如何实现呢?

【问题讨论】:

    标签: file comparison cmd directory


    【解决方案1】:

    您可以使用comp 命令: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/comp

    comp C:\PathA\A C:\PathB\B > C:\Comparison\comparison-between-A-B.txt
    

    【讨论】:

    • 谢谢,但你能告诉我如何将差异写入 .txt 文件吗?
    • 只重定向输出:comp dir1 dir2 > output.txt
    • @BerkerYüceer:大多数控制台命令允许您使用标准重定向语法来重定向它们的输出,例如dir >D:\dir.txtdir 的输出打印到D:\dir.txt 文件而不是屏幕上。你也可以试试comp:comp … >comp_results.txt
    【解决方案2】:

    对于那些可能对comp 命令有问题的人来说,这只是另一种方法..

    使用 comp 我遇到了一些问题,所以我找到了另一个解决方案:

    dir D:\Projects\Comparison\YourFolder\ > D:\Projects\Comparison\filelist-you.txt
    

    所以这会创建一个文件夹的文件列表,而不是我在要比较的第二个文件夹上做的相同..

    dir D:\Projects\Comparison\MyFolder\ > D:\Projects\Comparison\filelist-me.txt
    

    我将它们与这段代码进行比较:

    fc D:\Projects\Comparison\filelist-you.txt D:\Projects\Comparison\filelist-me.txt 
    

    给出真实的结果..

    在这一步之前一切都很好,但我不知道如何将这些比较结果放入新的 .txt 文件中。

    我意识到(“在@vulkanino 的帮助下”)我已经得到了dir path1 > intopath2 的答案,所以解决方案是:

    fc D:\Projects\Comparison\filelist-you.txt D:\Projects\Comparison\filelist-me.txt > D:\Projects\Comparison\filelist-comparison-between-you-me.txt
    

    >”是一个输出命令,将输出定向到确定的路径。

    【讨论】:

    • 如果您只想比较文件名,请使用DIR /B 而不仅仅是DIR
    • 感谢您提供更多信息,我只是将这个答案用于创建另一个观点。
    【解决方案3】:

    如果您要清点的目录包括文件和其他子目录,那么您必须使用 /S 开关才能“获取”输出中的所有内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-12
      • 1970-01-01
      • 2022-08-14
      相关资源
      最近更新 更多