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 :

La commande sed


Sujet :

Shell et commandes GNU

Vue hybride

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

    Informations forums :
    Inscription : Juin 2005
    Messages : 14
    Par défaut La commande sed
    Bonjour,

    Voilà mon problème.
    J'utilise une commande sed pour rechercher un motif qui est ::
    Je l'utilise de la façon suivante
    sed 's/\([^::]*\)::\(.*\)/\2/g' nom_fichier
    Cela me permet de récuperer ce qui se trouve après les ::
    Le problème c'est que dans mes lignes du fichier, si il y a le motif : avant le motif :: la commande sed prend en compte que le premier :
    Y-a-t-il un moyen de faire comprendre à la commande que c'est exclusivement le motif :: qu'il doit rechercher ?

    Merci

  2. #2
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Par défaut
    Au lieu d'écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    s/\([^::]*\)::\(.*\)/\2/g
    , essaye avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    s/::\([^:]*\)\(.*\)/\1/g
    Est-ce que le (.*\) est obligatoire ?
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pydévelop

    Derniers articles:

    (SQL Server) Introduction à la gestion des droits
    (UML) Souplesse et modularité grâce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  3. #3
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    essaye avec perl

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $ echo 'abc:def::123::456:789\n12::3:4'|
        perl -pe 's/^(^:[^:]|[^:]|[^:]:[^:])*:://' 
    123::456:789
    3:4

Discussions similaires

  1. La commande sed ne prend pas ma variable du shell
    Par Michaël dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 03/10/2006, 19h11
  2. La commande sed renvoie un fichier vide
    Par aaronw dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 29/09/2006, 11h46
  3. Problème avec la commande sed
    Par JUSTIN Loïc dans le forum Linux
    Réponses: 2
    Dernier message: 05/09/2006, 10h17
  4. Aide sur les commandes sed et awk
    Par elkhy dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 20/06/2006, 08h22
  5. Commande SED
    Par pierregag dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 17/03/2006, 12h51

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