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

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  commande bc dans awk

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

commande bc dans awk

n°1117624
misterZida​ne
Posté le 28-02-2009 à 11:13:05  profilanswer
 

Bonjour à toutes et à tous !
Savez vous s'il est possible d'ajouter la commande "bc" dans du "awk" ?
 
Si oui connaissez-vous la syntaxe ? Car j'ai un probleme :
echo "100 200" | awk '{ convB2($1) }
function(I){
x=$(echo "obase=2; 100" | bc);                                           <-----------Erreur de syntaxe au niveau du pipe
return $x }'
 
Merci si quelqu'un peut m'aider..

mood
Publicité
Posté le 28-02-2009 à 11:13:05  profilanswer
 

n°1117626
O'Gure
Modérateur
Multi grognon de B_L
Posté le 28-02-2009 à 11:22:18  profilanswer
 

encadre bc par des anti-quote  

`bc`


Combinaison : AltGr 7


---------------
Relax. Take a deep breath !
n°1117645
deather2
Posté le 28-02-2009 à 12:33:43  profilanswer
 

L'erreur de syntaxe vient du fait que tu as encadré ton script awk par des simples quote, et que le shell n'évalue pas les variables entre les simple quotes (contrairement aux double quotes). Donc ton $(...) est passé tel quel à awk, qui se chie dessus.
 
Solution :
 
echo "100 200" | awk '{ convB2($1) }
function(I){
x='"$(echo "obase=2; 100" | bc)"';
return $x }'  
 
Ca devrait le faire.

n°1117654
misterZida​ne
Posté le 28-02-2009 à 13:15:49  profilanswer
 

Ca marche parfaitement ! Il faut juste remplacer "return $x" par "return x".
Merci beaucoup !!!

n°1117662
misterZida​ne
Posté le 28-02-2009 à 13:36:56  profilanswer
 

Juste pour rajouter un peu de piment... :
Êtes-t-il possible d'ajouter une variable qui remplacerait la valeur 100 :
 
echo "100 200" | awk '{ convB2($1) }
function(I){
x='"$(echo "obase=2; I" | bc)"';
return x;
}'  
 
Ca serait vraiment parfais, car avec ce code, "bc" travail avec I et non ce que la variable I contient...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  commande bc dans awk

 

Sujets relatifs
[Shell] Remplacer dans un fichier en ligne de commandeCommande linux
navigateur ligne de commande avec javascriptligne de commande vlc
Partimage coté serveur, bash: partimaged: command not foundSyntaxe commande time
Aide pour une commande AWK (ou SED) (ou autre)Commande smbclient : comment voir l'arborescence ?
Syslinux + invite de commande DOS 98[bash] commande lors de l'ouverture d'un terminal
Plus de sujets relatifs à : commande bc dans awk


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)