Pourquoi ne comptabilise-t-il rien ?
Bonjour à toutes et à tous j'ai un petit problème dans ce programme :
Code:
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
|
#!/bin/bash
#Déclaration des variables
chemin=$HOME/menu
j=0
i=0
#Verrification si on passe bien un parametre
if [ "$#" -eq 1 ]
then
#Verrification que $1 est bien un repetoire
if [ -d "$chemin/$1" ]
then
# Si il l'est on regarde de quel type sont les fichier du repertoire
for fichier in "$chemin/$1/*.*"
do
if [ -d "$chemin/$1/$fichier"]
then
i=`expr $i + 1`
fi
if [ -f "$chemin/$1/$fichier"]
then
j=`expr $j + 1`
fi
done
echo "nombre de repetoire $i"
echo "nombre de fichier $j"
else
echo "$1 n'est pas un repertoire"
fi
else
echo "nombre de parametre incorrecte"
fi |
C'est lorsque je lui passe le repertoire livre qui contient deux fichiers et qui se trouve dans menu il m'indique qu'il y a 0 fichiers et 0 repertoire ? !
J'ai pu remarqué en faisant un test qu'il ne parcourt qu'une fois la boucle for alors qu'il devrait le faire 2 fois vu qu'il y a deux fichiers.
Mais je ne vois pas où est l'erreur dans l'écriture de la boucle ? !
Amicalement crodilus