Hi Guys,
I have a backup program that creates incremental backups and generates a MD5 hash at the same time.
Each server backup has its own sub folder.
Each backup file has a corresponding .md5 file containing a hash and a file name like this.
3410efed13b087322de8036145230a55 *COMPANYSRV_F_VOL-b008-i052.spi
I copy these files off site periodically to a linux based NAS Drive.
The version of linux is a bit cut down but I have managed to find and install a package manager and I now have md5deep working.
My question is how can I script md5deep to validate all files in the sub folders and output any errors. Or just output everything and I can search the text for errors.
I'm surprised I can't find this as it would seem exactly what it is meant to do.
Thanks in advance
David
Update
I suppose I should say what I have tried so far. 
The obvious command to start with is this with the md5 and backup files in the current dir.
md5deep -m COMPANYSRV_F_VOL-b008-i052.md5 *
I assume the * on the end is if there are multiple hashes contained within the md5. In my case there is only one hash contained in each md5.
This lists the one file if the hash is correct.
I purposely corrupted the file and tried again and there was no output.
What I really need is a success message or a list of corrupted files from the whole directory tree.
Update 2
I think the command I need is going to look something like this.
find . -name "*.md5" -exec cat {} \; | md5deep -x *.md5
That is....
Find all files in the current directory (find . -name)
With a name that ends in .md5 ("*.md5")
Pipe the contents of the files to md5deep (-exec cat {} \; | md5deep)
Show the file names that don't have a matching hash. (-x *.md5)
However this doesn't seem to read the standard input and just does a md5deep -x *.md5.
If I have three files with correct matching hash files it returns two.
I'd expect to see none when the hashes match.