Mass Checksumming tool for Windows?

6

3

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.

Daniel Magliola

Posted 2010-05-03T13:33:11.500

Reputation: 1 049

Answers

4

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.

afrazier

Posted 2010-05-03T13:33:11.500

Reputation: 21 316

Ah, I can get to Ars again. Comparison of HashCheck & HashTab

– afrazier – 2010-05-03T14:31:05.073

Hashutils did the trick. EXACTLY what I needed. Thanks! – Daniel Magliola – 2010-05-03T14:40:54.747

+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 – 2013-06-20T12:44:54.190

@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 – 2013-06-20T13:00:29.380

1

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

Ignacio Vazquez-Abrams

Posted 2010-05-03T13:33:11.500

Reputation: 100 516

1Any ideas for the *indows world? – Daniel Magliola – 2010-05-03T13:41:33.207

2Did you try the link? – Ignacio Vazquez-Abrams – 2010-05-03T13:55:47.637

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 – 2010-05-03T14:11:37.290

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 – 2010-05-03T14:37:20.197

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 – 2013-06-20T12:43:29.747

0

Total Commander (File -> Calculate checksums). But beware! If all filenames belong to your locale codepage, encoding will be this codepage, otherwise UTF8.

Smit Johnth

Posted 2010-05-03T13:33:11.500

Reputation: 561

-1

Disclaimer: I am the author of this library.

An alternative is pyFileFixity, a self-contained Python 2 library, containing the tool "rfigc.py". It works on Windows (since my machine runs Windows 7 x64) but it should work on all platforms, and the databases generated on one OS can be used on other OSes (because paths are relative and always uniformized in UNIX style).

gaborous

Posted 2010-05-03T13:33:11.500

Reputation: 1 412