Discussion:Awk

message: Le Awk de GNU n'est pas à ce point différent qu'il ait besoin de sa propre page, a priori. Les anglophones ont d'ailleurs redirigé GNU Awk vers Awk. Isaac (d) 13 mai 2010 à 09:12 (CEST)
replies: text:  </br>Bonjour Isaac </br>GNU Awk possède sa propre identité et poursuivra sa propre évolution. C'est un logiciel libre, une différence essentielle par rapport aux logiciels privateurs.</br>Il existe plusieurs implémentations libres du langage awk, dont la plus connue mawk, l'implémentation de Michael Brennan </br>*  Source du manuel GNU Awk </br>*  Mike's Awk  (de Michael Brennan), l'une des implémentations les plus rapides.</br> GNU Awk ne peut être catalogué dans la catégorie NAWK (pour new Awk) comme on peut le lire un peu partout, car c'est l'appellation utilisé par l'implémentation de AT&T: nawk = awk de AT&T = logiciel privateur, même si GNU Awk fait partie des dialectes Awk modernes en comparaison avec les anciens dialectes qu'on classifie dans oawk (old awk) </br>Il existe d'autres implémentations propriétaires comme MKS AWK ( disponible dans leur toolkit... </br>Des différences existent entre tous ces dialectes:</br> *  Comparaison de GNU Awk avec Unix awk et AT&T Awk </br> *  Bell Labs AWK </br> *  jawk (Awk dans une machine virtuelle Java) </br> *  RUNAWK, un petit adaptateur pour faire tourner un interpréteur Awk (pas testé, mais encore différent de GNU Awk)  </br></br>Je pense pour terminer qu'on ne doit pas fusionnner ces articles au même titre qu'on ne peut fusionner les articles Lisp et Elisp par exemple.</br>Genium (d) 13 mai 2010 à 13:36 (CEST)
replies: text: idem pour les articles Smalltalk et GNU Smalltalk. Genium (d) 13 mai 2010 à 18:58 (CEST)
replies: text: J'ai ôté les bandeaux. L'argumentation de Genium me parait valable et de toute façon, c'est la seule. Jerome66 24 juin 2010 à 06:46 (CEST)
thread_title:  Fusion abandonnée entre [[GNU Awk]] et [[Awk]] 

message: Prenant un tableau d'exemple à Mediawiki:Help:Tables,
#!/usr/bin/awk -f
# Script awk pour "aplatir" le code d’un tableau Mediawiki.
/^[{]\||\|\+|\|-|\|}/ {  # Le cas des lignes débutant par `{|’, `|+’, `|-’, ou `|}’ :
     if (ret) print ret  # écriture des lignes jointes accumulées, s’il y a lieu
     ret = ""            # remise à vide de la variable qui sert de retenue
     print               # écriture de la ligne en cours
     next                # retourne lire la ligne suivante
     }        # fin du bloc dépendant du succès de l’expression rationnelle d’en haut
# Dans le cas où il y a déjà qqchose en retenue,
#+ y joint la ligne en cours tt en ajustant la syntaxe MW en doublant le `!’ ou `|’ ;
#+ sinon, initialise la retenue avec une copie de la ligne en cours
{ ret = (ret)? ret " " substr($0, 1, 1) $0 : $0; }
donne :
{| border="1" cellpadding="20" cellspacing="0"	Délices     	Délices
Orange	Pomme       	
Pain  	Tarte       	
Beurre	Crème glacée	
--Jérôme Potts (discuter) 23 décembre 2015 à 08:20 (CET)
thread_title:  Exemple pour "aplatir" le code d'un tableau Mediawiki 

message: Une force de Awk est de tout analyser en record puis field et donc de permettre un découpage passez instinctif en ligne et colonne (mot). Ce pour quoi il a été inventé.
Mais il permet de changer ce paradigme en réglant les séparateurs de Record et Field comme bon vous semble. (exemple, si RS est \f et FS est \n , j'obtiens un découpage en pages et en lignes... mais plus du tout en mots.).
Pour en arriver à dire qu'il serait peut être plus judicieux d'inverser le vocabulaire dans la page et d'insister sur les records et les fields plutôt que sur les lignes et les mots.
85.168.113.56 (discuter) 10 avril 2022 à 18:37 (CEST)
thread_title:  Record/Field = Ligne/Mot