2012-02-28 129 views
1

我需要做的是將CMD中非相同文件的兩個文件夾與DOS命令進行比較。比較CMD中非相同文件的兩個文件夾

當我找到不相同的文件時,我需要將它們寫入具有完整路徑的.txt文件,以便我可以找出這些文件實際包含的位置。

那麼我該如何做到這一點?

回答

7

您可以使用comp命令: http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/comp.mspx?mfr=true

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

謝謝,但你也可以告訴我如何寫一個.txt文件的差異? – 2012-02-28 14:13:09

+0

只是重定向輸出:'comp dir1 dir2> output.txt' – vulkanino 2012-02-28 14:29:40

+0

@BerkerYüceer:大多數控制檯命令允許您使用重定向的標準語法重定向其輸出,例如, 'dir> D:\ dir.txt'將'dir'的輸出打印到'D:\ dir.txt'文件而不是屏幕上。你可以用'comp':'comp ...> comp_results.txt'來嘗試。 – 2012-02-28 14:32:01

3

這只是另一種方式來做到這一點對那些誰可能有問題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」的幫助下)我已經有了回答R作爲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 

>」是指導輸出到決定路徑的輸出指令。

+2

如果你想比較只有文件名,使用'DIR/B'而不是'DIR'。 – 2012-02-28 14:36:34

+0

感謝擴展信息我只是把這個答案創建另一個角度。 – 2012-02-28 14:39:58

3

如果您要清點的目錄包含文件和其他子目錄,那麼您必須使用/ S開關以便「獲取」輸出中的所有內容。