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

Linux Discussion :

Supprimer mot entre crochets en shell


Sujet :

Linux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Mai 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 12
    Par défaut Supprimer mot entre crochets en shell
    Salut !

    Je chercher à supprimer en Shell le 1er mot entre [] d'une ligne (stockée dans la variable $line), sans connaître ce mot:

    par exemple:
    paris [nord] [sud];091

    pour n'avoir que :
    paris [sud];091

    Puis, je souhaiterais faire la même chose avec le 2ème mot entre [] :

    transformer :
    paris [nord] [sud];091

    en :
    paris [nord];091

    Merci

    NB : je cherche à avoir une même ligne de commande pour les trois cas de figure suivant :

    paris [nord] [sud];091
    [savigny] sur [orge];091
    [paris] [magenta] république;066

  2. #2
    Membre habitué
    Inscrit en
    Mai 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 12
    Par défaut J'ai trouvé !
    Il fallait écrire :

    pour le premier []
    echo $line | sed 's/\[[^]]*\]//1'

    et pour le second []
    echo $line | sed 's/\[[^]]*\]//2'

    Si quelqu'un avait un autre moyen je suis preneur

    Seb

  3. #3
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    trucmuch | sed 's/\[[^]]*\]/\[\]/g'
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    S2:root # cat toto | sed 's/\[[^]]*\]/\[\]/g'
    toto [] [] dsgs
    S2:root #

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

Discussions similaires

  1. [WD-2003] recherche de mots entre crochets
    Par moht66 dans le forum VBA Word
    Réponses: 6
    Dernier message: 03/02/2011, 13h34
  2. supprimer texte entre deux balises specifiques
    Par HurtMarley dans le forum Langage
    Réponses: 2
    Dernier message: 31/01/2006, 18h30
  3. Réponses: 3
    Dernier message: 31/01/2006, 09h42
  4. [CSS] Supprimer espace entre 2 div sous Internet explorer
    Par Torpedox dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 30/12/2005, 16h41
  5. Comment supprimer 'mots recherchés'?
    Par bucky dans le forum Windows XP
    Réponses: 3
    Dernier message: 04/12/2003, 17h06

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