Re: [bash] problème(s)
Comput unicum 1113839153 (Mon, 18 Apr 2005 17:45:53 +0200),
Pierre Mauduit a écrit :
>
> Bonjour la liste,
Bonjour,
>[...]
> Donc je fais un "find ./ -name Thumbs.db > a_virer".
> Ensuite, un "for i in `cat a_virer`;do rm -i $i;done"
> Mais voila ca ne fonctionne pas, parce que les espaces ont l'air d'être
> interprétés comme un "passage à l'élément suivant" dans la déclaration
> du tableau.
>
> C'est un exemple, mais j'ai eu le même problème dans un autre script.
> Quelqu'un saurait-il comment gérer ce problème ?
find . -name Thumbs.db -print0 | xargs -0 rm
Le -print0 demande une sortie avec des chaînes terminées par le caractère
0 (comme en C), ce qui fait que les espaces sont traités comme des
caractères normaux. xargs récupère la liste sous cette forme grâce au -0.
--
Sylvain Sauvage
Reply to: