Il comando md5
controllerà più file per te. Elenca semplicemente tutti i file che vuoi dopo il comando. Cioè %codice%. Produrrà gli hash MD5 in questo modo:
MD5 (md1.gz) = 1c2c02b085a1bc2fed683eca86c0df02
MD5 (md1.gz) = c5515451d8f90a822457a4a8e4bf1791
Se vuoi solo gli hash, usa il flag md5 md1.gz md2.gz md3.gz
, stamperà solo l'hash, senza le informazioni identificative.
Suppongo che tu voglia confrontare l'hash dei file con quello nel corrispondente file .md5. Potresti scrivere uno script di shell veloce per verificare ogni hash generato rispetto a quello memorizzato nel file .md5.
Qualcosa del genere dovrebbe funzionare:
#!/bin/bash
for file in "$@"; do
generatedhash=$(md5 -q "$file")
storedhash=$(< "$file".md5)
if [[ $generatedhash != $storedhash ]]; then
echo "Hash for file '$file 'does not match"
fi
done
Salvalo in un file di testo, chiamalo qualcosa come checkmd5.sh e fai -q
nel terminale.
Stamperà un avviso per tutti i file che non hanno un hash corrispondente. Non stampa nulla se gli hash corrispondono. È veloce e sporco, quindi scuse se non funziona per il tuo caso particolare. Ma basandoti sugli esempi che hai fornito, se esegui chmod +x checkmd5.sh
dovresti controllare gli hash dei file .gz con i corrispondenti file .md5 e dirti se sono cattivi.