Re: [LA-discussions] problème d'espaces dans une variable bash

[ Thread Index | Date Index | More linuxarverne.org/discussions Archives ]


Daniel Cartron a écrit :> 
> il semblerait que 
> for DIRNAME in "*";do
> au lieu de
> for DIRNAME in *;do
> suffise, qqun peut confirmer ?

Non, si tu met "*", DIRNAME vaut * et il n'y a plus de boucle
Note que la solution for a ses limites quant aux nombre d'entrées je crois.

> par contre du coup LETTER=$(echo ${ARTIST:0:1}); ne me renvoit plus l'initiale 
> de DIRNAME mais son nom complet, je trouve pas comment éviter ça...

Ça par contre ne me semble pas lié
Ici le echo est inutile, faire simplement
LETTER="${ARTIST:0:1}"
est plus efficace
Les quotes pour le cas tordu où l'initiale est une espace ; et de façon générale prendre l'habitude de quoter les variables à l'utilisation (avec " pas ' sinon les variables ne sont pas substituées)

Dans ta question initiale je pense que
cd "$DIRNAME"
résoudra le problème.

-- 
Yannick Bedhomme
(ça fait bien longtemps que je ne fréquente plus LA vu que j'ai migré à Paris, mais je lis toujours les messages de temps en temps)

--
Liste de discussions de LinuxArverne
http://wiki.linuxarverne.org/listes_de_diffusion


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/