awk '$NF == "bytes.\r" && $(NF-2) == "size"{total+=$(NF-1)} END {print
total}' Clean >tail
Le résultat est
2.41217e+10
Mais je ne peut pas le diviser
La commande expr me dit : expr: non-numeric argument
Comment réussir à faire la division ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Stephane Chazelas
2003/11/20, 15:47(+01), Gérard Aubry:
awk '$NF == "bytes.r" && $(NF-2) == "size"{total+=$(NF-1)} END {print total}' Clean >tail Le résultat est 2.41217e+10 Mais je ne peut pas le diviser
Tu peux faire la division dans awk. Sinon, dans awk, tu peux forcer l'affichage sous forme d'entier en faisant printf "%.17gn", total au lieu de print total (une précision de 17 correspond à peu près au max qu'on peut obtenir avec un double de 64 bits, ce qu'utilisent les awk en principe pour leurs nombres, mais bon 17 chiffres ça commence à faire pas mal).
awk '$NF == "bytes.r" && $(NF-2) == "size"{total+=$(NF-1)} END {print
total}' Clean >tail
Le résultat est
2.41217e+10
Mais je ne peut pas le diviser
Tu peux faire la division dans awk.
Sinon, dans awk, tu peux forcer l'affichage sous forme d'entier
en faisant printf "%.17gn", total au lieu de print total (une
précision de 17 correspond à peu près au max qu'on peut obtenir
avec un double de 64 bits, ce qu'utilisent les awk en principe
pour leurs nombres, mais bon 17 chiffres ça commence à faire pas
mal).
awk '$NF == "bytes.r" && $(NF-2) == "size"{total+=$(NF-1)} END {print total}' Clean >tail Le résultat est 2.41217e+10 Mais je ne peut pas le diviser
Tu peux faire la division dans awk. Sinon, dans awk, tu peux forcer l'affichage sous forme d'entier en faisant printf "%.17gn", total au lieu de print total (une précision de 17 correspond à peu près au max qu'on peut obtenir avec un double de 64 bits, ce qu'utilisent les awk en principe pour leurs nombres, mais bon 17 chiffres ça commence à faire pas mal).
awk '$NF == "bytes.r" && $(NF-2) == "size"{total+=$(NF-1)} END {print total}' Clean >tail Le résultat est 2.41217e+10 Mais je ne peut pas le diviser
Tu peux faire la division dans awk. Sinon, dans awk, tu peux forcer l'affichage sous forme d'entier en faisant printf "%.17gn", total au lieu de print total
La division fonctionne : expr 24121650842 / 1024 -1609524 mais le résultat est faux ??
Merci
2003/11/20, 15:47(+01), Gérard Aubry:
awk '$NF == "bytes.r" && $(NF-2) == "size"{total+=$(NF-1)} END {print
total}' Clean >tail
Le résultat est
2.41217e+10
Mais je ne peut pas le diviser
Tu peux faire la division dans awk.
Sinon, dans awk, tu peux forcer l'affichage sous forme d'entier
en faisant printf "%.17gn", total au lieu de print total
La division fonctionne :
expr 24121650842 / 1024
-1609524
mais le résultat est faux ??
awk '$NF == "bytes.r" && $(NF-2) == "size"{total+=$(NF-1)} END {print total}' Clean >tail Le résultat est 2.41217e+10 Mais je ne peut pas le diviser
Tu peux faire la division dans awk. Sinon, dans awk, tu peux forcer l'affichage sous forme d'entier en faisant printf "%.17gn", total au lieu de print total
La division fonctionne : expr 24121650842 / 1024 -1609524 mais le résultat est faux ??
Merci
Laurent Wacrenier
Gérard Aubry écrit:
La division fonctionne : expr 24121650842 / 1024 -1609524 mais le résultat est faux ??
Dans l'arthmétique modulo 2^32, il est juste.
Gérard Aubry <aubryg@nospamhager.fr> écrit:
La division fonctionne :
expr 24121650842 / 1024
-1609524
mais le résultat est faux ??