debian-cd-clone/tools/imagesums

57 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
cd $1
:> MD5SUMS
:> SHA1SUMS
# 2 calls to find here to get the ordering right - we *really* want to
# get the jigdo files first
for file in `find * -name \*.jigdo` `find * -name \*.iso`; do
case $file in
*.jigdo)
iso=${file%%.jigdo}.iso
JIGDO=1
;;
*.iso)
iso=$file
JIGDO=0
;;
*)
echo "Found unexpected file $file!"
exit 1
;;
esac
grep -q $iso MD5SUMS
if [ $? -ne 0 ] ; then
MD5=""
if [ "$JIGDO" == 1 ] ; then
MD5=`zcat -f $file | awk '/Image Hex MD5Sum/ {print $5}'`
fi
if [ "$MD5"x != ""x ] ; then
echo "$MD5 $iso" >> MD5SUMS
else
echo "No Jigdo help for md5, doing it the long way"
md5sum $iso >> MD5SUMS
grep $iso MD5SUMS
fi
fi
grep -q $iso SHA1SUMS
if [ $? -ne 0 ] ; then
SHA1=""
if [ "$JIGDO" == 1 ] ; then
SHA1=`zcat -f $file | awk '/Image Hex SHA1Sum/ {print $5}'`
fi
if [ "$SHA1"x != ""x ] ; then
echo "$SHA1 $iso" >> SHA1SUMS
else
echo "No Jigdo help for sha1, doing it the long way"
sha1sum $iso >> SHA1SUMS
grep $iso SHA1SUMS
fi
fi
done