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 :

Recherche via grep


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 77
    Par défaut Recherche via grep
    Bonjour,
    Je fais une recherche via grep dans un fichier log et j'obtiens des résultats contradictoires:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    grep -c "\s\|200\s\|Mozilla" toto.log # retourne 241 127
    grep -c "200" toto.log # retourne 233 401
    La 1re pour chercher les occurrences de " |200 |Mozilla"
    La 2e pour les occurrences de "200"
    Le résultat dans la 2e recherche est sensé être supérieur puisque l'expression recherchée est incluse dans la 1re
    Où est ce que je me trompe?
    Merci de votre aide

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Salut,

    Ne protège pas les "|" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    grep -c "\s|200\s|Mozilla"

  3. #3
    Membre expérimenté
    Homme Profil pro
    [SciComp]
    Inscrit en
    Août 2013
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : [SciComp]

    Informations forums :
    Inscription : Août 2013
    Messages : 134
    Par défaut
    Bonjour,

    Aussi, ça devrait compter les lignes avec au moins un matching.
    Ça suppose donc pour compter le nombre d'occurrences qu'il n'y ai qu'une occurrence par ligne (je suppose que c'est ok dans un fichier de log, certes).

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 77
    Par défaut
    Heuu... Je pensais que c'était un méta-caractère qu'il fallait échapper et désignant l'opérateur logique "OU"

  5. #5
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Ça l'est, mais uniquement avec les expressions étendues, donc via egrep ou grep -E

  6. #6
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 349
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 349
    Par défaut
    Euh...pour grep aussi c'est un meta-caractère qui désigne le ou logique mais uniquement quand il est échappé...

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 77
    Par défaut
    Citation Envoyé par xflr6 Voir le message
    Bonjour,

    Aussi, ça devrait compter les lignes avec au moins un matching.
    Ça suppose donc pour compter le nombre d'occurrences qu'il n'y ai qu'une occurrence par ligne (je suppose que c'est ok dans un fichier de log, certes).
    Merci pour la précision, en effet si le pattern est trouvé plusieurs fois dans une même ligne il sera compté une seule fois

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

Discussions similaires

  1. Recherche via un formulaire
    Par Smox78 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/07/2008, 13h42
  2. Recherche via une requête
    Par Maque dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 04/07/2008, 14h07
  3. [Conception] recherche via plusieurs listes déroulantes
    Par chicho dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 13/03/2007, 17h56
  4. [MySQL] rechercher via une liste déroulante
    Par chicho dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 06/03/2007, 14h45
  5. recherche via un interval de temps (trimestre / semestre)
    Par erwan.bodere dans le forum Requêtes
    Réponses: 6
    Dernier message: 13/09/2006, 13h34

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