Diff

Ce programme sert à comparer deux répertoires qui devraient contenir des fichiers .sh semblable.

Aucune action n’est faite directement par le programme, il vous indique juste une commande à exécuter afin de rétablir l’égalité entre les deux répertoires.

Exemple d’utilisation :

diff.sh /home/user/ksh /home/user/newksh

$ cat diff.sh
if [ -z « $1 » ]
then
echo « Manque le 1er param : le nom du 1er répertoire »
echo « Manque le 2em param : le nom du 2em répertoire »
exit 1
fi
if [ -z « $2 » ]
then
echo « Manque le 2er param : le nom du 2em répertoire »
exit 2
fi

cd $1
for NomFicComplet in $(find . -name « *.*sh »)
do
echo « ___________________________________________________________________________________ »
NomKSH=$( basename $NomFicComplet)
echo  » diff $PWD/$NomKSH   »
echo  »      $2/$NomKSH  »
if [ ! -e « $NomKSH »    ]
then
echo « le fichier $PWD/$NomKSH    n existe pas »
echo « cp  $2/$NomKSH $PWD/$NomKSH »
echo « valider pour continuer »; read
fi
if [ ! -e « $2/$NomKSH » ]
then
echo « le fichier $2/$NomKSH      n existe pas »
echo « cp  $PWD/$NomKSH $2/$NomKSH »
echo « valider pour continuer »; read
fi
if [  -e « $NomKSH » -a  -e « $2/$NomKSH » ]
then
diff $PWD/$NomKSH  $2/$NomKSH
CodeRetour=$?
if [ $CodeRetour != 0 ]
then
banner Difference
echo « valider pour editer les fichiers »; read reponse
if [ -z « $reponse » ]
then
vi $PWD/$NomKSH  $2/$NomKSH
fi
echo « cp $PWD/$NomKSH  $2/$NomKSH »
echo « valider pour continuer ($CodeRetour) »; read
fi
fi
echo « ___________________________________________________________________________________ »
done
exit