Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm looking for a command line tool for windows that will go over a directory tree (recursively) and output a list of all the files in there, and a checksum for each file (can be CRC, MD5, whatever).

Esentially, what I want is to compare 2 big directory trees in 2 machines. I'm planning to take the outputs of running this tool in both, and diffing them to make sure they're identical.

I appreciate any ideas.

share|improve this question
up vote 3 down vote accepted

hashutils and HashCheck are the best packages I've found on Windows so far. Both tools are open source from the same author, but HashCheck is a shell extension and hashutils is a set of CLI tools. In my testing, they're significantly faster than the ported unxutils versions. (Despite the expectation that they'd be I/O bound.)

I also think that these tools are better than the often-mentioned HashTab, and if I could get to the Ars OpenForum, I'd link a post I wrote up with my justification.

share|improve this answer
    
Ah, I can get to Ars again. Comparison of HashCheck & HashTab – afrazier May 3 '10 at 14:31
    
Hashutils did the trick. EXACTLY what I needed. Thanks! – Daniel Magliola May 3 '10 at 14:40
    
+1 on answer. Nice - for me I would store the output report and then use something like beyond compare comparison tool to compare the current report with the older ones to see what's changed - sound plausible? – therobyouknow Jun 20 '13 at 12:44
    
@therobyouknow: Yes, you can do that. I've done it as a fast way of finding different files on systems where running Beyond Compare on both datasets at once was difficult or impossible. It's much easier to FTP/copy/email a small txt file around to check against. – afrazier Jun 20 '13 at 13:00

Easy in the *nix world. Just grab the tools and then make a pipeline of find, sort, and md5sum.

find . -type f -print0 | sort -z | xargs -0 md5sum
share|improve this answer
1  
Any ideas for the *indows world? – Daniel Magliola May 3 '10 at 13:41
1  
Did you try the link? – Ignacio Vazquez-Abrams May 3 '10 at 13:55
    
The link in IVA's answer is to Windows ported versions of the needed GNU tools. Another option would be cygwin to add a full Linux-a-like environment to Windows, though that would probably be overkill for what you describe soI suggest you give unixtools a go. – David Spillett May 3 '10 at 14:11
    
Sorry, no, I didn't follow the link, the start of your comment seemed like the typical "windows sucks" snide remark, I didn't even see the link :-) Thank you for the tip! – Daniel Magliola May 3 '10 at 14:37
    
you should be able to use @IgnacioVazquez-Abrams 's answer in mobaxterm. This is free, self-contained single .exe program that provides a Linux-like command line shell on top of Windows - which is what CygWin does too. In fact Mobaxterm is based on Cygwin I believe, but far less messy in terms of setting up, dependencies etc. It really is just download and run. – therobyouknow Jun 20 '13 at 12:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .