Order of the Butterfly
Posts: 315 from 2004/2/13
From: Naples - Italy
@ rms
There are two ways.
The fast way is not a real byte by byte comparison, but it is faster. Simply calculate the md5 sums of all your original files and those of the copies on the DVD or CD. For this you can use the shell utility CRCtoy V1.4 by Ray (http://amigos.amiga.hu/ray/).
The real way requires the use of a compare utility. There are many such shell utilities on Aminet, but usually they are limited to the comparison of two specified files. In this case we want to compare hundreds or thousands files and directories, so it is necessary to search for the most advanced utilities. IMHO the best of them all is Cmp, written by Alex Kazik (Aminet: util/cli/ALeXcompare.lha), whose debugging was done by ALeX with my collaboration and suggestions, too. With this utility you must simply type in a shell:
cmp <first_directory> <second_directory> all checkd
and this will generate a complete report on all equal, different, and possibly missing, files and directories.
Of course the directory tree names and filenames in the <first_directory> must be equal to those in the <second_directory>, as it is the case when you compare a source directory and its copy on CD or DVD.
Please note that a byte by byte comparison is hungry in terms of processing power and usually takes much time if you are comparing gigabytes of data. And if there are more than ten thousands files that should be compared, the CD/DVD drive caches become highly fragmented and comparison speed slows down further...
Many "strange" options of Cmp are there for making possible to manage externally the command. This is done by my ARexx utility EqFiles.rexx (Aminet: util/rexx/EqFiles.lha) that can find all the equal files in <first_directory> and <second_directory> even if the directory trees and the filenames are completely different. This can be useful if you have huge collections of pictures, music files, etc. and want to find (and also automatically delete) all the duplicates. EqFiles.rexx was necessary for my own use because all the few commands present on Aminet and able to do the same operations were/are bugged and no more developed...
I have created an improved MorphOS version of this utility, but never had time to finish and distribute it. If some people is interested I can try to distribute the package in the next future.
Powered by PegasosII-G4, MacMini, PowerMac MDD.