Comparaison de fichier sous centos

Résolu
tom45 -  
 tom45 -
Bonjour je cherche à faire un petit script pour comparer 2 md5sum

j'ai essayé

if cmp -s /tmp/$BACKUPNAME.md5 tmp/$BACKUPNAME_LOCAL.md5==0
then
Copie_dufichier
else
Analyse
logger "erreur dans la comparaison"
fi

une idée
A voir également:

2 réponses

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
Salut,

Une solution parmi d'autres…

#! /bin/bash
#set -x

cmp -s fich.md5 copie2.md5
retval="$?"

case "${retval}" in
0)	echo "Copie du fichier…"
	copie_du_fichier
	;;
1)	echo "Analyse du fichier…"
	analyse_fichier
	;;
*)	echo "Erreur générale."
	;;
esac


0
tom45
 
je ne comprends pas trop ce que fait le case pourquoi c'est mieux qu'un if ?
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430 > tom45
 
Je n'ai pas dit que c'était mieux, c'est juste une autre façon de faire.

Chaque commande exécutée produit un code retour, en gros 0 quand ça réussi et 1 en cas d'échec.
Ce code retour est stockée immédiatement dans une variable ($?) d'où le besoin de la conservée dans une autre variable (${retval}).
Après il ne reste plus qu'à évaluer ladite variable dans le case.
0
tom45
 
autre question con comment je peux tout simplement faire un test
pour savoir déja si mes fichiers sont identique

genre un
cmp -s fich.md5 copie2.md5 >> resultat.txt
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430 > tom45
 
T'es-tu renseigné sur la signification de l'option "-s" dans
cmp -s
?

Apparemment non ;-(
0
tom45 > zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention  
 
mais nannnnn j'ai lu de travers le man autant pour moi ça me fait l'inverse merci bcp pour l'aide zipe31
0
tom45
 
si si ça affiche le résultat mais je n'ai rien d'affiché quand je tape ma commande ?
0