Re: [LA-discussions] problème d'espaces dans une variable bash |
[ Thread Index |
Date Index
| More linuxarverne.org/discussions Archives
]
Voici un petit script qui pourrait t'inspirer :
#!/bin/bash
#Je sauvegarde ma variable IFS
CPIFS=$IFS
#Je substitue les séparateurs habituels par une apostrophe
IFS="'"
#
#Je fais une recherche insensible à la casse avec l'option iname, et
cela ligne par ligne
find . -type d -iname \* | while read line ;
do
#J'ajoute des anti-slash devant mes espaces
name=$(echo $line | sed 's/ /\\ /g')
#exemple de commande à générer dans la boucle
commande="ls -l $name"
eval $commande
echo $name visualisé
done
IFS=$CPIFS
Le jeu. 17 mai 2012 11:18:31 CEST, Daniel Cartron a écrit :
Le jeudi 17 mai 2012 10:12:00 Daniel Cartron a écrit :
il semblerait que
for DIRNAME in "*";do
au lieu de
for DIRNAME in *;do
suffise, qqun peut confirmer ?
Avant que je ne fasse un test catastrophique...
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...
--
Liste de discussions de LinuxArverne
http://wiki.linuxarverne.org/listes_de_diffusion