GNU Awk 5.2 kommer med ny vedligeholdelse, pma-understøttelse, MPFR-tilstand og mere

kommando-gawk

I Linux bruges det til at scanne mønstre og behandle sprog.

I slutningen af ​​sidste måned delte vi her på bloggen nyheden om Brian Kernighan, en af ​​skaberne af AWK havde bekræftet det fortsætter bag AWK-koden, giver support og forbedrer dette behandlingssprog (du kan se nyhederne på følgende link.)

Grunden til at nævne dette er, at for nylig en ny version af GNU-Gawk-implementeringen blev frigivet 5.2.0, af programmeringssproget AWK.

AWK blev udviklet i 70'erne og har ikke gennemgået væsentlige ændringer siden midten af ​​80'erne, hvor sprogets hovedrygrad blev defineret, hvilket har gjort det muligt at bevare sprogets oprindelige stabilitet og enkelhed over tid og over tid. årtier.

AWK var et af de første konsolværktøjer populær til håndtering (håndtering/udtræk) af data ved at maksimere funktionaliteten af ​​UNIX-pipelines. Sproget, der leveres af dette værktøj, er i øjeblikket en standard i næsten alle moderne UNIX-type operativsystemer, så meget, at det er en del af de grundlæggende UNIX-specifikationer, så det findes normalt allerede installeret i de fleste af dem som standard.

På trods af sin høje alder, administratorer bruger stadig aktivt AWK at udføre rutinearbejde relateret til parsing af forskellige typer tekstfiler og generering af simple resulterende statistik.

Denne kommando giver et scriptsprog til tekstbehandling, som vi kan: Definere variabler, bruge strenge og aritmetiske operatorer, bruge flowkontrol og sløjfer og generere formaterede rapporter. Faktisk er Awk mere end blot en simpel mønsterbehandlingskommando, det er et helt semantisk analysesprog.

De vigtigste nye funktioner i GNU Awk 5.2

I denne nye version, der præsenteres, fremhæves det tilføjet eksperimentel støtte til pma memory manager (persistent malloc), som giver dig mulighed for at gemme værdierne af variabler, arrays og brugerdefinerede funktioner mellem forskellige kørsler af awk.

En anden ændring, der skiller sig ud i denne nye version, er den ændret sammenligningslogik af tal, som stemmer overens med den logik, der bruges i C-sproget. For brugere, ændringen påvirker hovedsageligt sammenligningen af ​​Infinity- og NaN-værdier med almindelige tal.

Ud over det også det bemærkes, at muligheden for at bruge FNV1-A hash-funktionen på associative arrays aktiveres det ved at sætte miljøvariablen AWK_HASH til "fnv1a".

I BWK-tilstand aktiverer angivelse af flaget "–traditional" som standard kompatibilitet med tidligere inkluderede områdeudtryk med "-r" ("-re-interval") muligheden.

rwarray-udvidelsen giver nye writeall()- og readall()-funktioner til at skrive og læse alle variabler og arrays på én gang.

Ud over det, understøttelse af aritmetik med høj præcision, er blevet implementeret ved hjælp af MPFR-biblioteket, udover fjernet fra GNU Awk-vedligeholderansvaret og overført til en tredjepartsentusiast. Det bemærkes, at MPFR-tilstandsimplementeringen af ​​GNU Awk betragtes som en fejl. I tilfælde af en vedvarende tilstandsændring er det planlagt helt at fjerne denne funktion fra GNU Awk.

Af de andre ændringer der skiller sig ud fra denne nye version:

  • Opdaterede byggeinfrastrukturkomponenter Libtool 2.4.7 og Bison 3.8.2.
  • Fjernet understøttelse af kompilering med CMake (kodesupport til CMake var ikke efterspurgt og blev ikke opdateret i fem år).
  • Tilføjet mkbool()-funktionen for at skabe booleske værdier, der er tal, men behandles som en boolesk type.
  • Tilføjet gawkbug-script for at rapportere fejl.
  • Øjeblikkelig nedlukning leveres på syntaksfejl, der løser problemer ved hjælp af fuzzing-værktøjer.
  • Der har været adskillige mindre kodeoprydninger og fejlrettelser.
  • Understøttelse af OS/2- og VAX/VMS-operativsystemer er blevet fjernet.

Endelig, hvis du er interesseret i at vide mere om det, kan du kontrollere detaljerne I det følgende link. 


Indholdet af artiklen overholder vores principper for redaktionel etik. Klik på for at rapportere en fejl her.

Vær den første til at kommentere

Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort.

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.