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

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ новият 5.2.0 ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° програмния Π΅Π·ΠΈΠΊ AWK ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° GNU β€” Gawk. 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() Π·Π° създаванС Π½Π° Π±ΡƒΠ»Π΅Π²ΠΈ стойности, ΠΊΠΎΠΈΡ‚ΠΎ са числа, Π½ΠΎ сС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚ ΠΊΠ°Ρ‚ΠΎ Ρ‚ΠΈΠΏ Boolean.
  • Π’ Ρ€Π΅ΠΆΠΈΠΌ BWK ΠΏΡ€ΠΈ Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° Ρ„Π»Π°Π³Π° "β€”traditional" ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΈΠ·Ρ€Π°Π·ΠΈ Π·Π° опрСдСлянС Π½Π° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎ-Ρ€Π°Π½ΠΎ бяха Π²ΠΊΠ»ΡŽΡ‡Π²Π°Π½ΠΈ с опцията "-r" ("β€”re-interval").
  • Π’ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΠ΅Ρ‚ΠΎ rwarray са ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈ Π½ΠΎΠ²ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ writeall() ΠΈ readall() Π·Π° запис ΠΈ Ρ‡Π΅Ρ‚Π΅Π½Π΅ навСднъТ Π½Π° всички ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ ΠΈ масиви.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ ΡΠΊΡ€ΠΈΠΏΡ‚ΡŠΡ‚ gawkbug Π·Π° ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° информация Π·Π° Π³Ρ€Π΅ΡˆΠΊΠΈ.
  • Π“Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°Π½ΠΎ ΠΌΠΈΠ³Π½ΠΎΠ²Π΅Π½ΠΎ спиранС Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ΠΈΠ΅ Π½Π° синтактични Π³Ρ€Π΅ΡˆΠΊΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ Ρ€Π΅ΡˆΠ°Π²Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅ ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° инструмСнти Π·Π° fuzzing тСстиранС.
  • ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ систСми OS/2 ΠΈ VAX/VMS Π΅ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚Π΅Π½Π°.

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

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster