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 :

Changement de valeur dans un awk ?


Sujet :

Shell et commandes GNU

  1. #1
    Membre confirmé Avatar de gege87270
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    224
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Mai 2007
    Messages : 224
    Par défaut Changement de valeur dans un awk ?
    Rebelote,

    Un nouveau problème à résoudre :

    Dans mon code .pc, j'ai des lignes

    ou

    enfin plein de combinaison entre argc , >, <, et la valeur.

    Le but étant de remplacer le if(argc <ou> n) par if(argc <ou> n+1)

    Je ne sais pas trop comment résoudre cette colle

  2. #2
    Membre émérite Avatar de BlaireauOne
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    492
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2007
    Messages : 492
    Par défaut
    http://www.shellunix.com/awk.html
    http://www.shellunix.com/regexp.html

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    if (argc > 1)
    if (argc > 10)
    .../...
    if (argc > 2)
    if (argc>3)
    .../...
    if (argc> 4)
    if (argc<5)
    if (argc==6)
    .../...
    if(argc>7)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    awk -F";" '
    {
     
    	if ($0 ~ /if *\(argc *[<>=]=? *[0-9]+\)/) {
    	      match($0,/[0-9]+/)
    	      # print "RSTART, RLENGTH : "RSTART, RLENGTH
    	      val=substr($0,RSTART,RLENGTH)
    	      val++
    	      print "avant     : "$0
    	      print "    apres : "substr($0,1,RSTART-1)""val""substr($0,RSTART+RLENGTH)
    	}
    }
    ' liste.txt > resultat.txt

    resultat.txt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    avant     : if (argc > 1)
        apres : if (argc > 2)
    avant     : if (argc > 10)
        apres : if (argc > 11)
    avant     : if (argc > 2)
        apres : if (argc > 3)
    avant     : if (argc>3)
        apres : if (argc>4)
    avant     : if (argc> 4)
        apres : if (argc> 5)
    avant     : if (argc<5)
        apres : if (argc<6)
    avant     : if (argc==6)
        apres : if (argc==7)
    avant     : if(argc>7)
        apres : if(argc>8)

  3. #3
    Membre confirmé Avatar de gege87270
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    224
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Mai 2007
    Messages : 224
    Par défaut
    j'ai procédé à l'exécution du code que tu m'as fait passer. je n'ai aucune erreur à l'xécution, mais le code en lui même ne produit aucun changement.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 30/08/2007, 09h47
  2. changement de valeur dans input
    Par eyolas dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 02/05/2007, 17h37
  3. Réponses: 8
    Dernier message: 29/03/2007, 14h48
  4. Changement de valeur dans différents formulaires
    Par dragonfly dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 02/05/2006, 10h21
  5. Réponses: 1
    Dernier message: 29/09/2005, 11h10

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