Awk modifier ligne dans section

padawan -  
 padawan -
Bonjour,

Je suis une newbies sur awk et j'essaie de trouver une commande pour modifier une ligne à l'intérieur d'une section

exemple
>SECTION1<
toto=5
titi=4
tata=3
.....

>SECTION2<
toto=4
titi=5
tata=8
....

J'aimerai change la valeur de tata qui se trouve à l'interieur de la section SECTION2 (la passer de 8 à 105) càd avoir :

>SECTION1<
toto=5
titi=4
tata=3
.....

>SECTION2<
toto=4
titi=5
tata=105
....
Configuration: Unix Aix

5 réponses

  1. ShaBoo Messages postés 406 Statut Membre 50
     
    Bonjour,

    Je pense que tu trouveras ton bonheur ici :

    http://ploug.eu.org/doc/principe-awk-lacroix.pdf
    0
  2. padawan
     
    J'ai tjrs du mal à trouver, help ....
    0
  3. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    Tu tiens absolument à faire ça avec "awk" ?

    Comment sont séparées les sections ? Par des lignes vides ?
    Le nombre de lignes des sections est-il constant ?
    0
  4. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    hello
    une approche, je n'ai pas testé:
    awk 'BEGIN {flag=0} ; />SECTION2</ {flag=1} ; /tata=/ {if(flag){$0="tata=" val ; flag=0} } ; { print $0} ' val=105
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. padawan
     
    Mille merci Dubcek, c'est génial ça marche super bien !!!
    0