IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

find grep et espaces dans les noms de répertoire


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut find grep et espaces dans les noms de répertoire
    Bonjour,

    Pour chercher des fichiers comportant un terme particulier dans une arborescence de fichiers, j'utilise la tentative de commande suivante :

    > find $HOME -name "*.xml" | xargs grep hello
    Cela fonctionne bien, sauf lors de la rencontre de répertoires comportant un espace dans leur nom. Le grep (ou le xargs) ne comprend plus.

    Comment puis-je modifier cette commande pour que ça fonctionne ?

    J'utilise zsh comme shell.

    Merci.

  2. #2
    Membre Expert
    Avatar de pitipoisson
    Homme Profil pro
    Chercheur
    Inscrit en
    Septembre 2006
    Messages
    1 942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 942
    Par défaut
    Bonjour,

    Peut-être en faisant exécuter grep directement par find :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    find $HOME -name "*.xml" -exec grep -l "hello" '{}' \;
    (avec -l, tu n'auras que les noms de fichiers... à affiner au besoin)

  3. #3
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut
    Excellent lumineux !

    J'ai fait
    > find $HOME -name "*.xml" -exec grep --with-filename hello '{}' \;
    ... et cela a fonctionné impec, merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. gérer les espaces dans les noms de répertoire
    Par Jasmine80 dans le forum Langage
    Réponses: 9
    Dernier message: 28/06/2012, 13h50
  2. support des espaces dans les noms de fichiers
    Par menuge dans le forum Langage
    Réponses: 9
    Dernier message: 25/10/2006, 09h02
  3. suppression des espaces dans les noms de fichiers
    Par menuge dans le forum Général Python
    Réponses: 8
    Dernier message: 22/10/2006, 12h01
  4. [BATCH] Espaces dans les noms de fichiers :|
    Par andlio dans le forum Windows
    Réponses: 1
    Dernier message: 03/08/2006, 03h42
  5. Smbclient et espace dans les noms
    Par jean-jacques varvenne dans le forum Réseau
    Réponses: 4
    Dernier message: 30/11/2005, 18h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo