Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1360 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [AWK] Utilisation de "-v" pour passer un Array ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[AWK] Utilisation de "-v" pour passer un Array ?

n°1211312
Deadlock
Feck off, cup !
Posté le 30-09-2005 à 08:53:18  profilanswer
 

Hello,
 
J'ai un script ksh dans lequel une variable contient le résultat d'une commande multi-lignes du genre:

echo "$VAR"
var1:value1
var2:value2
varN:valueN

Le FS ":" pouvant être changé bien sûr ...
 
J'aimerai passer cette variable dans AWK via l'option -v (awk -v VarArray="$VAR" ou bien VarArray=`echo "$VAR"` pour pouvoir générer un array dans la BEGIN {} section en vue de l'utiliser sur le traitement d'un fichier ou de l'output d'une autre commande de la sorte:

print Array[var1] -> value1


Ou bien utiliser la commande getline dans le script AWK en vue d'ouvrir une source externe VAR/File ...
Des idées ? Actuellement j'ai l'impression que AWK (en fait le NAWK de Solaris comparable à GAWK) n'aime pas les variables comportant des CR.
 
Merci d'avance !


Message édité par Deadlock le 30-09-2005 à 08:53:53

---------------
Institutions européennes: Ensemble d'outils dont le but est de transformer une grande quantité d'argent en merde. Cette merde est utilisée pour créer de nouveaux fonctionnaires. L'argent restant payant des externes pour faire leur travail.
mood
Publicité
Posté le 30-09-2005 à 08:53:18  profilanswer
 

n°1211329
Deadlock
Feck off, cup !
Posté le 30-09-2005 à 09:18:10  profilanswer
 

Bon ben j'ai trouvé en fait :)

BEGIN {
    FS = ":"
    Cmd="echo $VAR"
    while ((Cmd | getline) > 0)
        Array[$0] = $1
    close(Cmd)
}

Bon weekend.


---------------
Institutions européennes: Ensemble d'outils dont le but est de transformer une grande quantité d'argent en merde. Cette merde est utilisée pour créer de nouveaux fonctionnaires. L'argent restant payant des externes pour faire leur travail.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [AWK] Utilisation de "-v" pour passer un Array ?

 

Sujets relatifs
[c++/Python] Passer une instance c++ à un script pythonLenteur/blocage suite a l'utilisation de modules CPAN
Remplissage d'un array un peu bizarre...[resolu] passer un mot écrit en hébreu via méthode GET
[OpenGL] Vertex Array & Listes d'Affichage ...[J2ME] utilisation de bluetooth
Utilisation test[C] passer en argument un nom de fichier
[C] Utilisation mpatrolEnvoyer un array par un post ?
Plus de sujets relatifs à : [AWK] Utilisation de "-v" pour passer un Array ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR