2010-03-16 17 views
0

Existe-t-il un programme ou un script permettant de comparer la somme de contrôle md5 des fichiers que j'ai essayé de créer, mais j'ai des problèmes avec les fichiers qui ont un espace dans eux, donc je me demandais si ce serait plus facile d'utiliser simplement une application. md5deep est quelque chose que j'ai téléchargé qui retourne la somme de contrôle.Script ou application qui effectuera la vérification md5

rm md5mastervalue 
for i in `ls /media/disk`; do md5deep -rb /media/disk/$i >> md5mastervalue; done 
for d in 1 3 ; do cp -rf /media/disk/ /media/disk-$d & done 
wait 
rm md5valuet1 
rm md5valuet3 
for k in `ls /media/disk` 
do 
    for f in 1 3; do md5deep -rb /media/disk-$f/$k >> md5valuet$f; done 
done 
for n in 1 3; do diff md5mastervalue md5valuet$n; done 
echo Finished 

Répondre

1

êtes-vous sur linux? Si c'est le cas, vous pouvez utiliser md5sum ou sha512sum (meilleure sécurité). Exemple, créer une ligne de base de vos fichiers

$ sha512sum * > baseline.txt 

alors, la prochaine fois que vous voulez vérifier, il suffit d'utiliser l'option -c, par exemple

$ sha512sum -c baseline.txt 
+0

Eh bien, la raison pour laquelle je ne l'ai pas utilisé le md5sum est parce que cela n'a pas fonctionné de manière récursive, ce que fait md5deep, tout ce code fonctionnera correctement pour tous les fichiers qui n'ont pas d'espaces en eux –

+0

il n'est pas difficile de l'utiliser récursivement, il suffit de le combiner avec 'find', ou faire un version shell normale utilisant globstar avec boucle for (bash 4.0). – ghostdog74