Tout ton bazard
nbfichiers=`ls -1 fichiers | wc -l`
for (( i=1; i != nbfichiers+1; i++ ))
do
if [ $i -le 9 ] # <= 9
then
fonction fichiers/fichier0$nbfichiers.txt
else
fonction fichiers/fichier$nbfichiers.txt
fi
done
peut se résumer à
fonction fichiers/fichier*.txt
Et si tu veux t'assurer que tu ne prend que les fichier*.txt à deux chiffres ça donne
fonction fichiers/fichier[0-9][0-9].txt
Et si ta fonction est longue et que tu veux avoir un état d'avancement tu peux faire un truc du genre
for f in fichiers/fichier*.txt;do
echo $f
fonction "$f"
done
(les guillements autours du $f ne sont pas utile dans cet exemple, mais dans l'absolu c'est nécessaire au cas où les noms de fichiers contiendraient des espaces, ou autres caractères amusants)
# Comment couper les cheveux en quatre ...
Posté par wismerhill . En réponse au message Problème utilisation variables. Évalué à 2.
Tout ton bazard
nbfichiers=`ls -1 fichiers | wc -l`
for (( i=1; i != nbfichiers+1; i++ ))
do
if [ $i -le 9 ] # <= 9
then
fonction fichiers/fichier0$nbfichiers.txt
else
fonction fichiers/fichier$nbfichiers.txt
fi
done
peut se résumer à
fonction fichiers/fichier*.txt
Et si tu veux t'assurer que tu ne prend que les fichier*.txt à deux chiffres ça donne
fonction fichiers/fichier[0-9][0-9].txt
Et si ta fonction est longue et que tu veux avoir un état d'avancement tu peux faire un truc du genre
for f in fichiers/fichier*.txt;do
echo $f
fonction "$f"
done
(les guillements autours du $f ne sont pas utile dans cet exemple, mais dans l'absolu c'est nécessaire au cas où les noms de fichiers contiendraient des espaces, ou autres caractères amusants)