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 POSIX Discussion :

[Aix] grep sur deux conditions


Sujet :

Shell et commandes POSIX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 4
    Par défaut [Aix] grep sur deux conditions
    Hello,
    J'essaie de faire un grep sur un fichier avec une condition positive et négative. Si les deux conditions sont remplie, je n'affiche rien.
    L'exemple concret, j'aimerais greper une ligne écrite "backup" dans un log mais si celle-ci a aussi /archives_batch/ dedans, je ne veux pas l'afficher ou afficher un texte "tout va bien" par exemple.
    Je pensais qu'en faisant un grep -h | grep -v ça fonctionnerait mais en fait ça ne cumule pas les 2 grep.
    Comment faire ? Merci.

    extrait du log en question:
    backup: 0511-449 An error occurred accessing /apsys/dbprod/archives_batch/APR_R001_0.bat_20120202_1_ar: A file or directory in the path name does not exist

  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,

    Ben normalement grep 'backup' fich.log | grep -v 'archives_batch' devrait faire l'affaire, non ?

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 4
    Par défaut
    En fait non car le grep -v sort tous les blocs qui ne matchent pas /archives_batch/
    Moi j'aimerais que l'unique ou les lignes que me sort le premier grep soient testées encore une fois avec la seconde conditions (je ne sais pas si je suis clair ?).

  4. #4
    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
    Citation Envoyé par lpn_007 Voir le message
    En fait non car le grep -v sort tous les blocs qui ne matchent pas /archives_batch/
    Ben non ! Au contraire, le "grep -v" supprime toutes les lignes où apparait le motif "archives_batch".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    $ cat plop 
    backup: blabla blabla
    backup: blabla blabla archives_batch blabla
    backup: blabla archives blabla
    backup: blabla blabla archives_batch
    backup: blabla 
    backup: blabla archives_batch blabla
    archives_batch blabla backup
     
    $ grep 'backup' plop 
    backup: blabla blabla
    backup: blabla blabla archives_batch blabla
    backup: blabla archives blabla
    backup: blabla blabla archives_batch
    backup: blabla 
    backup: blabla archives_batch blabla
    archives_batch blabla backup
     
    $ grep 'backup' plop | grep -v 'archives_batch'
    backup: blabla blabla
    backup: blabla archives blabla
    backup: blabla 
     
    $

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 4
    Par défaut
    Citation Envoyé par zipe31 Voir le message
    Ben non ! Au contraire, le "grep -v" supprime toutes les lignes où apparait le motif "archives_batch".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    $ cat plop 
    backup: blabla blabla
    backup: blabla blabla archives_batch blabla
    backup: blabla archives blabla
    backup: blabla blabla archives_batch
    backup: blabla 
    backup: blabla archives_batch blabla
    archives_batch blabla backup
     
    $ grep 'backup' plop 
    backup: blabla blabla
    backup: blabla blabla archives_batch blabla
    backup: blabla archives blabla
    backup: blabla blabla archives_batch
    backup: blabla 
    backup: blabla archives_batch blabla
    archives_batch blabla backup
     
    $ grep 'backup' plop | grep -v 'archives_batch'
    backup: blabla blabla
    backup: blabla archives blabla
    backup: blabla 
     
    $
    Yes, je me suis mal exprimé, j'aimerais voir tous les backup sauf ceux qui ont backup et archives_batch, il ne restera QUE les backup avec une autre suite de caractère.

  6. #6
    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
    Citation Envoyé par lpn_007 Voir le message
    Yes, je me suis mal exprimé, j'aimerais voir tous les backup sauf ceux qui ont backup et archives_batch, il ne restera QUE les backup avec une autre suite de caractère.
    Ben c'est le cas de mon exemple, non ?

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

Discussions similaires

  1. grep sur plusieurs conditions
    Par vince2005 dans le forum Langage
    Réponses: 4
    Dernier message: 15/09/2010, 22h58
  2. Nombre de cellule Si 2 conditions sur deux plages
    Par CNANJO dans le forum Excel
    Réponses: 1
    Dernier message: 24/12/2008, 07h17
  3. Conditions d'unité sur deux champs
    Par SPKlls dans le forum Langage SQL
    Réponses: 6
    Dernier message: 16/11/2008, 13h26
  4. excel vba condition sur deux colonnes
    Par Thibautrives dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 13/05/2008, 15h12
  5. Réponses: 9
    Dernier message: 21/11/2005, 18h51

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