il va falloit faire une petite procédure pour ça
for i in <repertoire_modele>/* ; do echo "==== $i ====" ; if [ -f <repertoire_a_verifier>/$(basename $i) ] ; then diff $i <repertoire_a_verifier>/$(basename $i) ; else echo <repertoire_a_verifier>/$(basename $i)" n'existe pas "; fi ; done > fichier_de_resultat
par exemple :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
francois@trillian:/tmp$ mkdir aa ; mkdir bb
francois@trillian:/tmp$ echo totoutu > bb/a
totoutu
francois@trillian:/tmp$ echo tutu > bb/b
tutu
francois@trillian:/tmp$ echo toto > aa/a
toto
francois@trillian:/tmp$ echo toto > aa/c
francois@trillian:/tmp$ ls -lrt aa/ bb/
bb/:
total 8
-rw------- 1 francois francois 5 24 mars 07:11 b
-rw------- 1 francois francois 8 24 mars 07:12 a
aa/:
total 8
-rw------- 1 francois francois 5 24 mars 07:06 a
-rw------- 1 francois francois 5 24 mars 07:17 c
francois@trillian:/tmp$
francois@trillian:/tmp$ for i in aa/* ; do if [ -f bb/$(basename $i) ] ; then diff $i bb/$(basename $i) ; else echo bb/$(basename $i)" n'existe pas"; fi ; done
1c1
< toto
---
> totoutu
bb/c n'existe pas
francois@trillian:/tmp$ rm -rf aa/ ; rm -rf bb/ |
comme ça tu compares les fichier qui ont le même nom dans aa/ et dans bb/
si un fichier dans aa/ n'existe pas dans bb/ ça l'indique aussi
le reste à faire c'est que de la mise en page pour rendre le fichier resultat lisible même si il y a 100 fichiers à traiter.
Partager