Contenu d'un répertoire
Sawssen
-
Sawssen -
Sawssen -
Bonjour, ce code n'affiche rien je veux savoir ma faute
ls $1 > list
a=0
for i in `echo $list`
do
a= a+ wc -l list
done
ls $1 > list
a=0
for i in `echo $list`
do
a= a+ wc -l list
done
6 réponses
-
-
je vais écrire un script qui calcule le nombre d'éléments d'un répertoire
ls $1 > list
echo " le nombre d'éléments du répertoire" $1 "est " `wc -l list `
il m'a affiché le nombre d'éléments du répertoire est 2 list
don j'ai réussi à compter les éléments du répertoire mais je veux pas que le mot list figure -
merci beaucoup
j'ai une autre question , maintenant je veux parcourir le fichier list et je compte le nombre des fichiers ordinaires
j'ai écrit
a=0
for i in `echo $list`
do
if [ -f $i ]
then
a=a+1
fi
echo " le nombre des fichiers ordinaires est " $a
done
aucune résultat n'est affichée
j'ai besoin d'aide -
merci ça marche mais j'ai pas compris la boucle while !!
qunad on écrit done < list c'est que notre boucle parcoure list ?????????? -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
bonsoir merci pour votre aide :)
maintenant , j'ai essayé d'afficher récursivement le contenu d'un répertoire ainsi que ses sous répertoires :)
j'ai écrit ce code :
if [ -d $1 ]
then
ls $1 > liste
while read i
do
if [ -d "$i" ]
then
echo "************" $i "*************"
echo `ls $i`
fi
done < liste
else
echo "ce n'est pas un répertoire !! "
fi
pouvez vous corriger ce code ?????-
#! /bin/bash #set -xv if [ -d ${1} ] then ls ${1} > liste while read i do if [ -d "${1}/${i}" ] then echo "************ ${i} *************" ls ${1}/${i} fi done < liste else echo "ce n'est pas un répertoire !! " fi
A la ligne 9 (ainsi qu'à la 12) il faut mettre le chemin complet sans quoi le test ne peut pas aboutir (la variable $i ne contient qu'un nom et sans son chemin exact la condition ne peut être évaluée).
A la ligne 12, le echo devant la commande ls est inutile.
-
-