يصل GNU Awk 5.2 مع مشرف جديد ودعم pma ووضع MPFR والمزيد

أمر gawk

في Linux ، يتم استخدامه لمسح الأنماط ولغة المعالجة.

في نهاية الشهر الماضي شاركنا هنا على المدونة الأخبار التي بريان كيرنيغان ، أحد مؤسسي AWK قد أكد ذلك تواصل وراء رمز AWK، وتقديم الدعم وتحسين لغة المعالجة هذه (يمكنك الرجوع إلى الأخبار بتنسيق الرابط التالي.)

سبب ذكر هذا هو ذلك مؤخرًا تم إصدار نسخة جديدة من تطبيق GNU-Gawk 5.2.0 من لغة البرمجة AWK.

تم تطوير AWK في السبعينيات ولم يمر بتغيرات كبيرة منذ منتصف الثمانينيات ، عندما تم تحديد العمود الفقري الرئيسي للغة ، مما جعل من الممكن الحفاظ على الاستقرار والبساطة الأصليين للغة بمرور الوقت ومع مرور الوقت. عقود.

كانت AWK واحدة من أولى الأدوات المساعدة لوحدة التحكم شائع لإدارة (معالجة / استخراج) البيانات من خلال تعظيم وظائف خطوط أنابيب UNIX. تعد اللغة التي توفرها هذه الأداة حاليًا معيارًا في جميع أنظمة التشغيل الحديثة تقريبًا من نوع UNIX ، لدرجة أنها جزء من مواصفات UNIX الأساسية ، لذلك يتم العثور عليها عادةً مثبتة بالفعل في معظمها افتراضيًا.

على الرغم من تقدمه في السن ، لا يزال المسؤولون يستخدمون AWK بنشاط لأداء الأعمال الروتينية المتعلقة بتحليل أنواع مختلفة من الملفات النصية وإنشاء إحصائيات ناتجة بسيطة.

يوفر هذا الأمر لغة برمجة نصية لمعالجة النص يمكننا من خلالها: تحديد المتغيرات ، واستخدام السلاسل والمعاملات الحسابية ، واستخدام التحكم في التدفق والحلقات ، وإنشاء تقارير منسقة. في الواقع ، Awk هو أكثر من مجرد أمر بسيط لمعالجة الأنماط ، إنها لغة تحليل دلالي كاملة.

الميزات الرئيسية الجديدة لـ GNU Awk 5.2

في هذا الإصدار الجديد الذي تم تقديمه ، تم تسليط الضوء على أن إضافة دعم تجريبي لمدير ذاكرة pma (malloc المستمر) ، والذي يسمح لك بحفظ قيم المتغيرات والمصفوفات والوظائف المعرفة من قبل المستخدم بين عمليات التشغيل المختلفة لـ awk.

تغيير آخر يبرز في هذا الإصدار الجديد هو ذلك منطق المقارنة المتغير من الأرقام ، والتي تتوافق مع المنطق المستخدم في لغة C. بالنسبة للمستخدمين ، يؤثر التغيير بشكل أساسي على مقارنة قيم Infinity و NaN بأرقام منتظمة.

بالإضافة إلى ذلك أيضًا يلاحظ أن القدرة على استخدام وظيفة التجزئة FNV1-A في المصفوفات الترابطية يتم تمكينه عن طريق تعيين متغير البيئة AWK_HASH على "fnv1a".

في وضع BWK ، يتيح تحديد علامة "–traditional" افتراضيًا التوافق مع تعبيرات النطاق المضمنة مسبقًا مع الخيار "-r" ("فاصل زمني").

يوفر ملحق rwarray دالات جديدة writeall () و readall () لكتابة جميع المتغيرات والمصفوفات وقراءتها مرة واحدة.

بالإضافة إلى ذلك، دعم الحساب عالي الدقة ، تم تنفيذه باستخدام مكتبة MPFR بالإضافة إلى تمت إزالته من مسؤولية مشرف GNU Awk ونقلها إلى طرف ثالث متحمس. من الملاحظ أن تنفيذ وضع MPFR لـ GNU Awk يعتبر خطأ. في حالة حدوث تغيير مستمر في الحالة ، من المخطط إزالة هذه الميزة تمامًا من GNU Awk.

من التغييرات الأخرى التي تتميز عن هذا الإصدار الجديد:

  • تحديث مكونات البنية التحتية للبناء Libtool 2.4.7 و Bison 3.8.2.
  • تمت إزالة دعم التجميع باستخدام CMake (لم يكن دعم الكود لـ CMake مطلوبًا ولم يتم تحديثه لمدة خمس سنوات).
  • تمت إضافة وظيفة mkbool () لإنشاء قيم منطقية عبارة عن أرقام ، ولكن يتم التعامل معها كنوع منطقي.
  • تمت إضافة برنامج نصي gawkbug للإبلاغ عن الأخطاء.
  • يتم توفير إيقاف التشغيل الفوري عند حدوث أخطاء في بناء الجملة وحل المشكلات باستخدام أدوات التشويش.
  • كان هناك العديد من عمليات تنظيف التعليمات البرمجية الصغيرة وإصلاحات الأخطاء.
  • تمت إزالة دعم أنظمة التشغيل OS / 2 و VAX / VMS.

أخيرا، إذا كنت مهتمًا بمعرفة المزيد عنها، يمكنك التحقق من التفاصيل في الرابط التالي. 


محتوى المقال يلتزم بمبادئنا أخلاقيات التحرير. للإبلاغ عن خطأ انقر فوق هنا.

كن أول من يعلق

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.