[script] faire une addition avec le flux d'entrée

faire une addition avec le flux d'entrée [script] - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 30-08-2005 à 14:45:26    

J'ai un script qui me sort des nombres, un par ligne, en héxa, et je voudrais utiliser un pipe puis un autre script pour obtenir la somme de ces nombres, est-ce possible ?
 
Merci :)

Reply

Marsh Posté le 30-08-2005 à 14:45:26   

Reply

Marsh Posté le 30-08-2005 à 15:03:07    

awk '{somme+=$1} END {print somme}'
 
Si tes nombres en hexa ne sont pas de la forme 0x234EF, il faut faire :
 
sed s/^/0x/ | awk '{somme+=$1} END {print somme}'

Reply

Marsh Posté le 30-08-2005 à 16:02:59    

merci, mais ça m'affiche 0 tout le temps :(

Reply

Marsh Posté le 30-08-2005 à 16:06:06    

Montre un exemple de sortie du premier script, alors.

Reply

Marsh Posté le 30-08-2005 à 16:16:51    

00000123
00001000
000000A2

Reply

Marsh Posté le 30-08-2005 à 16:34:07    

chezmoiçamarche.org


---------------
get amaroK plugin
Reply

Marsh Posté le 30-08-2005 à 16:38:10    

16:37 jmouette@silicium ~ > sed s/^/0x/ | awk '{somme+=$1} END {print somme}'
00000123
00001000
000000A2
4549

Reply

Marsh Posté le 30-08-2005 à 17:08:29    

je ne comprends pas, effectivement là ça marche mais si je mets ces lignes dans un fichier toto et que je fais un cat toto | sed s/^/0x/ | awk '{somme+=$1} END {print somme}' ça me retourne 0 :/
Désolé si c'est une erreur bête.

Reply

Marsh Posté le 31-08-2005 à 00:16:26    

Heu vous etes sur que awk peut sommer des nombres hexadecimaux directement ?

Reply

Marsh Posté le 31-08-2005 à 13:10:54    

matafan a écrit :

Heu vous etes sur que awk peut sommer des nombres hexadecimaux directement ?

oui

Reply

Marsh Posté le 31-08-2005 à 13:10:54   

Reply

Marsh Posté le 31-08-2005 à 15:33:11    


Perdu. Awk ne connait que les nombres decimaux. gawk connait aussi l'octal et l'hexadécimal, mais pas pour le flux d'entrée par défaut. Si tu veux interpréter le flux d'entrée comme de l'hexa en gawk, il faut utiliser l'option --non-decimal-data.
 
http://www.gnu.org/software/gawk/m [...] 02dnumbers

Reply

Marsh Posté le 01-09-2005 à 11:18:30    

matafan a écrit :

Perdu. Awk ne connait que les nombres decimaux.

Encore une preuve de la supériorité de mawk sur gawk (en plus d'être plus rapide).

Reply

Marsh Posté le 07-09-2005 à 18:52:51    

oh

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed