md5sum b0rked in Fink?
As MacOS X still doesn't ship with some md5sum equivalent, I gabbed the Fink version. Strange, that it got installed along with the dpkg package, as there's the coreutils package too. Anyway, in most cases I'd like to *verify* checksums, not generate them. The manpage says:
-c Check md5sum of all files listed in file against the checksum listed in the same file. The actual format of that file is the same as output of md5sum....and then it goes on to tell us how to *generate* a checksum, oh well. But -c doesn't even work:
$ md5sum -c MD5SUM.txt usage: md5sum [-bv] [-c [file]] | [file...] Generates or checks MD5 Message Digests -c check message digests (default is generate) [...] The input for -c should be the list of message digests and file names that is printed on stdout by this program when it generates digests. $ tail -1 MD5SUM.txt 677ecebf8ca5c5135dc1c951a34d42b5 cd_diags.isoWhat's wrong here? Is md5sum really b0rked? Or is it just PEBKAC? So, here goes a quick 'n dirty workaround for verifying lots of files:
$ FILE=/path/to/md5sum.txt $ for i in `awk '{print $2}' "$FILE"`; do \ test -f "$i" || continue && C=`openssl md5 $i | awk '{print $2}'` && \ egrep -q "$C $i" "$FILE" && echo "FILE: $i OK" || echo "FILE: $i FAILED" done