Find et espaces

Résolu
dindoun Messages postés 1047 Statut Membre -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

je ne trouve plus le post qui parle de la manière de touver les fichiers sans fidn

en effet
for i in `find / |grep truc`; do cat $i |grep blahblah ; done
,ne marche pas quand on a un espace
Configuration: Linux
Firefox 3.0.3

3 réponses

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    Suffit de mettre la variable entre quotes doubles :
    for i in `find / |grep truc`; do cat "$i" |grep blahblah ; done 
    et puis :
    find / -name '*truc*'
    serait peut être plus approprié, non ? et tant qu'on y est :
    find / -name '*truc*' -exec grep blahblah {} \;
    serait surement mieux ;-))
    1
  2. dindoun Messages postés 1047 Statut Membre 135
     
    merci
    0
  3. dindoun Messages postés 1047 Statut Membre 135
     
    j ai trouvé" un truc super c'est le séparateur IFS :

    IFS=$'\n' ; for i in a*; do ls $i ; done ; unset IFS

    remarque \n signifie passage à la ligne
    0
    1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
       
      0