Нова вСрсия Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° GNU Awk 5.2

Π‘Π΅ΡˆΠ΅ прСдставСна Π½ΠΎΠ²Π° вСрсия Π½Π° внСдряванСто Π½Π° Π΅Π·ΠΈΠΊΠ° Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ AWK Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° GNU, Gawk 5.2.0. AWK Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ ΠΏΡ€Π΅Π· 70-Ρ‚Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π½Π° миналия Π²Π΅ΠΊ ΠΈ Π½Π΅ Π΅ ΠΏΡ€Π΅Ρ‚ΡŠΡ€ΠΏΡΠ» Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ ΠΎΡ‚ срСдата Π½Π° 80-Ρ‚Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ, Π² ΠΊΠΎΠΈΡ‚ΠΎ Π΅ Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ основният Π³Ρ€ΡŠΠ±Π½Π°ΠΊ Π½Π° Π΅Π·ΠΈΠΊΠ°, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΡƒ позволява Π΄Π° Π·Π°ΠΏΠ°Π·ΠΈ ΠΏΡŠΡ€Π²ΠΈΡ‡Π½Π°Ρ‚Π° стабилност ΠΈ простота Π½Π° Π΅Π·ΠΈΠΊΠ° ΠΏΡ€Π΅Π· ΠΌΠΈΠ½Π°Π»ΠΎΡ‚ΠΎ дСсСтилСтия. Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Π½Π°ΠΏΡ€Π΅Π΄Π½Π°Π»Π°Ρ‚Π° си Π²ΡŠΠ·Ρ€Π°ΡΡ‚, AWK всС ΠΎΡ‰Π΅ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΎΡ‚ администраторитС Π·Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° Ρ€ΡƒΡ‚ΠΈΠ½Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°, ΡΠ²ΡŠΡ€Π·Π°Π½Π° с Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅ тСкстови Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° прости Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚Π½ΠΈ статистики.

ΠšΠ»ΡŽΡ‡ΠΎΠ²ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ:

  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ СкспСримСнтална ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡŠΡ€Π° Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° pma (persistent malloc), ΠΊΠΎΠΉΡ‚ΠΎ Π²ΠΈ позволява Π΄Π° Π·Π°ΠΏΠ°Π·Π²Π°Ρ‚Π΅ стойноститС Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ, масиви ΠΈ Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΈ ΠΎΡ‚ потрСбитСля Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ изпълнСния Π½Π° awk.
  • ВисокопрСцизната Π°Ρ€ΠΈΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‡Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°, прСдоставСна ΠΎΡ‚ MPFR Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π°, Π΅ ΠΈΠ·Π²Π°Π΄Π΅Π½Π° ΠΎΡ‚ отговорността Π½Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‰ΠΈΡ GNU Awk ΠΈ Π΅ възлоТСна Π½Π° външСн Снтусиаст. ΠžΡ‚Π±Π΅Π»ΡΠ·Π²Π° сС, Ρ‡Π΅ ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅Ρ‚ΠΎ Π½Π° MPFR Ρ€Π΅ΠΆΠΈΠΌ Π² GNU Awk сС счита Π·Π° Π³Ρ€Π΅ΡˆΠΊΠ°. Π’ случай Π½Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½Π° промяна Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ, ΠΏΠ»Π°Π½ΡŠΡ‚ Π΅ напълно Π΄Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π΅Ρ‚Π΅ Ρ‚Π°Π·ΠΈ функция ΠΎΡ‚ GNU Awk.
  • ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅ Π½Π° инфраструктурата Π·Π° сглобяванС Libtool 2.4.7 ΠΈ Bison 3.8.2 са Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ.
  • ΠŸΡ€ΠΎΠΌΠ΅Π½Π΅Π½Π° Π΅ Π»ΠΎΠ³ΠΈΠΊΠ°Ρ‚Π° Π·Π° сравняванС Π½Π° числа, която Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π² ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΠ΅ с Π»ΠΎΠ³ΠΈΠΊΠ°Ρ‚Π°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π² Π΅Π·ΠΈΠΊΠ° C. Π—Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ промяната засяга Π³Π»Π°Π²Π½ΠΎ сравнСниСто Π½Π° Infinity ΠΈ NaN стойности с ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈ числа.
  • Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Ρ…Π΅Ρˆ функцията FNV1-A Π² асоциативни масиви, която Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°Ρ‚Π° Π½Π° срСдата AWK_HASH Π΅ настроСна Π½Π° β€žfnv1aβ€œ.
  • ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° CMake Π΅ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚Π° (ΠΊΠΎΠ΄ΡŠΡ‚ Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Cmake Π½Π΅ Π΅ Ρ‚ΡŠΡ€ΡΠ΅Π½ ΠΈ Π½Π΅ Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ ΠΎΡ‚ ΠΏΠ΅Ρ‚ Π³ΠΎΠ΄ΠΈΠ½ΠΈ).
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ функция mkbool() Π·Π° създаванС Π½Π° Π±ΡƒΠ»Π΅Π²ΠΈ стойности, ΠΊΠΎΠΈΡ‚ΠΎ са числа, Π½ΠΎ сС Ρ‚Ρ€Π΅Ρ‚ΠΈΡ€Π°Ρ‚ ΠΊΠ°Ρ‚ΠΎ Π±ΡƒΠ»Π΅Π²ΠΈ.
  • Π’ Ρ€Π΅ΠΆΠΈΠΌ BWK, ΡƒΠΊΠ°Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ„Π»Π°Π³Π° "--traditional" ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ позволява ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΈΠ·Ρ€Π°Π·ΠΈ Π·Π° Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΈ, Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈ ΠΏΡ€Π΅Π΄ΠΈ Ρ‚ΠΎΠ²Π° ΠΎΡ‚ опцията "-r" ("--re-interval").
  • Π Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΠ΅Ρ‚ΠΎ rwarray ΠΏΡ€Π΅Π΄Π»Π°Π³Π° Π½ΠΎΠ²ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ writeall() ΠΈ readall() Π·Π° писанС ΠΈ Ρ‡Π΅Ρ‚Π΅Π½Π΅ Π½Π° всички ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ ΠΈ масиви навСднъТ.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ скрипт gawkbug Π·Π° Π΄ΠΎΠΊΠ»Π°Π΄Π²Π°Π½Π΅ Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ.
  • ΠžΡΠΈΠ³ΡƒΡ€ΡΠ²Π° сС Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅, Π°ΠΊΠΎ Π±ΡŠΠ΄Π°Ρ‚ ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ΠΈ синтактични Π³Ρ€Π΅ΡˆΠΊΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ Ρ€Π΅ΡˆΠ°Π²Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅ с ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° инструмСнти Π·Π° тСстванС Π½Π° Ρ€Π°Π·ΠΌΠΈΠ²Π°Π½Π΅.
  • ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π·Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ систСми OS/2 ΠΈ VAX/VMS Π΅ прСустановСна.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€