Premiere occurence du résultat du sed

paradox& Messages postés 22 Statut Membre -  
paradox& Messages postés 22 Statut Membre -
Bonjour,
je veux récupérer une partie du fichier délimiter par var1 et var2
j ai lancé la commande suivante
sed -n "/$var/,/$var2/p" fichier
le resultat retourné c est une partie du fichier délimité par var1 et la dernière occurrence de
var2
cependant le resultat souhaité est la partie du fichier entre la premiere var1 et la premiere var2
merci d avance ;) ))

2 réponses

  1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
     
    Salut,

    Je ne sais pas si j'ai bien interprété ta demande, mais il semblerait que tu veuilles exclure les 2 motifs de l'affichage, c'est bien ça ?

    Si oui, cette syntaxe devrait le faire :

    sed -n '/$var/,/$var2/{//d;p}' fichier 

    0
  2. paradox& Messages postés 22 Statut Membre
     
    slt merci pr ta réponse,
    c est pas exclure les 2 motif mais au juste
    je veux récupérer une partie entre ces 2 motifs
    or le 2 eme motif a plusieurs occurrences et moi je veux intercepter la partie du fichier entre le premier motif et la première occurrence du 2em motif :)
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      or le 2 eme motif a plusieurs occurrences
      Sur la même ligne ?

      Tu as un exemple CONCRET à nous montrer ?
      0
    2. paradox& Messages postés 22 Statut Membre
       
      par exemple
      paradox&
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXxxXXXXXXXXXXXXXXXXXXX .... ZIPE31
      ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ ZIPE31 .............................ZIPE31....


      moi je veux récupérer le code entre paradox1 et ZIPE31 ( la 1ere fois ou elle est apparue )
      0
    3. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Et il est où ton soucis ?
      $ cat plop 
      paradox&
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXxxXXXXXXXXXXXXXXXXXXX .... ZIPE31
      ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ ZIPE31 .............................ZIPE31....
      
      $ sed -n '/paradox/,/ZIPE31/p' plop 
      paradox&
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXxxXXXXXXXXXXXXXXXXXXX .... ZIPE31
      
      $
      Je n'ai que la 1ère occurrence là, non ?
      0
    4. paradox& Messages postés 22 Statut Membre
       
      le résultat retourné c est
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXxxXXXXXXXXXXXXXXXXXXX .... ZIPE31
      ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ ZIPE31 .............................ZIPE31..

      !!!!
      0
    5. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Ben c'est que tu as un problème chez toi, la preuve dans mon précédent message seule la 1ère occurrence est retournée ;-\

      Donc :
      - Quel système ?
      - Quel shell ?
      - Quelle version de sed ?
      - Quel format de fichiers ? Unix - Dos - Mac ?
      0