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 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
# si le nombre d'arguments n'est pas egal a 2
if [ $# -ne 2 ]; then
echo "Erreur : Il faut 2 arguments."
# sinon, si le nombre d'arguments est egal a 2
elif [ $# -eq 2 ]; then
path=`pwd`
# si les deux arguments sont des repertoires
if [ -d $1 ] && [ -d $2 ]; then
# on liste le contenu du repertoire qui contient le plus d'elements
if [ `ls -l $1 | wc -l` -gt `ls -l $2 | wc -l` ]; then
rep1=$1
rep2=$2
else
rep1=$2
rep2=$1
fi
# listage du repertoire qui a le plus d'elements
contentrep1=`ls $rep1`
# on les elements de rep1
for var in $contentrep1
do
# on se place dans $rep1
cd $rep1
# si $var est un fichier dans $rep1
if [ -f $var ]; then
# on se place dans rep2
cd $rep2
# si $var n'est pas un fichier dans $rep2
if [ ! -f $var ]; then
echo "Code de retour : 1"
exit 1
fi
# sinon, si $var est un repertoire dans $rep1
elif [ -d $var ]; then
# on se place dans $rep2
cd $rep2
# si $var n'est pas un repertoire dans $rep2
if [ ! -d $var ]; then
echo "Code de retour : 1"
exit 1
fi
fi
done
# si on arrive ici, c'est que les deux repertoires sont identiques
echo "Code de retour : 0"
exit 0
fi
fi |
Partager