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