Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 24/01/2011, à 08:46

ehmicky

[Résolu]awk : printf

Salut à tous,
Je ne comprends pas pourquoi awk me renvoie ça :

$ awk '{ printf "%.2s\n", $0 }' <<<"abcdef"
abcdef

là où j'attends le même résultat que :

$ printf "%.2s\n" "abcdef"
ab

Quelqu'un saurait-il où est le problème ? Merci ! smile

$ awk --version | head -n+1
GNU Awk 3.1.7

Dernière modification par ehmicky (Le 12/02/2011, à 14:59)


Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?

Hors ligne

#2 Le 24/01/2011, à 13:24

wido

Re : [Résolu]awk : printf

Bonjour,
ça doit venir de ta version de awk

$ awk '{ printf "%.2s\n", $0 }' <<<"abcdef"
ab
$ awk --version | head -n+1
GNU Awk 3.1.8

je suis sous archlinux.

Dernière modification par wido (Le 24/01/2011, à 13:24)

Hors ligne

#3 Le 24/01/2011, à 13:30

credenhill

Re : [Résolu]awk : printf

hello
autre version

 $ awk '{ printf "%.2s\n",$1}' <<<"abcdef"
ab
$ awk --version | head -1
GNU Awk 3.1.6

En ligne

#4 Le 24/01/2011, à 13:35

chopinhauer

Re : [Résolu]awk : printf

Un bogue introduit entre la version 3.1.6 et 3.1.7 ? Une nouvelle version de AWK est disponible (3.1.8), tu peux regarder son comportement.

PS : Vu le message de wido c'est un bogue uniquement dans la version 3.1.7.

Dernière modification par chopinhauer (Le 24/01/2011, à 15:21)


Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.

Hors ligne

#5 Le 24/01/2011, à 15:19

FRUiT

Re : [Résolu]awk : printf

Moi j'ai pareil que ehmicky, et ce avec toutes sortes d'orthographes.

Version 3.1.7 également.


Neon Suite by FRUiT (kde4.6) [url]http://[Merci de relire les règles]/yzm7cee[/url]
"Pour la carotte, le lapin est la plus parfaite incarnation du mal" (R. Sheckley)
clean

Hors ligne

#6 Le 24/01/2011, à 16:00

cep

Re : [Résolu]awk : printf

si awk/gawk non disponible en 3.1.8 mawk n'a pas ce bug bien que de version plus ancienne

Hors ligne

#7 Le 24/01/2011, à 16:53

ehmicky

Re : [Résolu]awk : printf

Salut,
Merci à tous, j'ai compilé depuis les sources de la 3.1.8 et ça marche. Etrange quand même parce que ça me paraît gros comme bug ! Je me demande si ça vient pas du packaging en .deb ?

Edit : ça semble être le cas, j'ai compilé depuis les sources de la 3.1.7 et ça bugue pas non plus. Il y a bien un message lors du make :

builtin.c: In function 'format_tree':
builtin.c:790: warning: format not a string literal and no format arguments

La fonction est format_tree qui semble lié à tout ça :

/*
 * format_tree() formats nodes of a tree, starting with a left node,
 * and accordingly to a fmt_string providing a format like in
 * printf family from C library.  Returns a string node which value
 * is a formatted string.  Called by  sprintf function.
 *
 * It is one of the uglier parts of gawk.  Thanks to Michal Jaegermann
 * for taming this beast and making it compatible with ANSI C.
 */

Mais au final, ça marche avec les sources, mais pas en installant directement via dpkg le .deb i386.

Edit2 : le binaire dans le .deb bugue, j'ai envoyé un mail au maintainer smile

Dernière modification par ehmicky (Le 24/01/2011, à 17:18)


Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?

Hors ligne

#8 Le 12/02/2011, à 14:59

ehmicky

Re : [Résolu]awk : printf

Ok, donc bug déjà reporté et corrigé (visiblement bien dans builtin.c), faut donc attendre pour Ubuntu la version 3.1.8.


Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?

Hors ligne