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 :

grep et classe inverse


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
    Juillet 2006
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 161
    Par défaut grep et classe inverse
    Bonjour,

    J'ai le fichier suivant test.txt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #+ /usr/**/
    #+ /**/
    #+ /etc
    +  /test/
    + /etc/**/
    + /etc/network/interfaces
    + /root
    #+ /root/**
    + *.conf
    + *.sh
    Je souhaiterais selectionner uniquement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    /test
    /etc/network/interfaces
    J'ai essayer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cat test.txt | grep -E "^\+[[:space:]]*[a-zA-Z0-9]*" | awk '{print $2}'
    mais j'obtiens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    /test/
    /etc/**/
    /etc/network/interfaces
    /root
    *.conf
    *.sh
    A l'aide !!!

    De plus les classes inverse ne marche pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cat test.txt| grep -E "^\+[[:space:]]*\*" | awk '{print $2}' :
    mais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cat test.txt| grep -E "^\+[[:space:]]*[^\*]" | awk '{print $2}'
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    /test/
    /etc/**/
    /etc/network/interfaces
    /root
    *.conf
    *.sh

    Qui est à l'aise avec ca ?

    Merci

    ++

  2. #2
    Membre averti
    Inscrit en
    Septembre 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 16
    Par défaut
    Bonjour

    Est il juste de dire que tu ne souhaites que les lignes
    1) qui ne commencent pas par #
    2) qui ne contiennent pas *

    si c est le cas

    grep -v -E "\*|^#" text | awk '{print $2}'

    résultat
    /test/
    /etc/network/interfaces
    /root





    @+

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 161
    Par défaut
    Bonsoir,

    Je te remercie.

    Je me suis compliqué la vie pour rien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    grep -i -E '^\+[[:space:]]*[^\*][/]?([a-zA-Z0-9])*([a-zA-Z0-9/])*[/]?$' text | awk '{print $2}'
    Merci

    ++

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

Discussions similaires

  1. [VB.NET] Privilégier une classe à une structure ou inversement ?
    Par Jean-Philippe André dans le forum Débuter
    Réponses: 2
    Dernier message: 27/02/2012, 08h47
  2. Réponses: 3
    Dernier message: 11/01/2011, 17h01
  3. Classe pour la création d'un graphe xy
    Par Bob dans le forum MFC
    Réponses: 24
    Dernier message: 03/12/2009, 17h20
  4. Réponses: 31
    Dernier message: 30/03/2006, 16h57
  5. classe A liée à classe B et inversement
    Par mencaglia dans le forum C++
    Réponses: 5
    Dernier message: 16/03/2006, 09h27

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