أوك

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

AWK هي واحدة من الأدوات القديمة لتظهر في النسخة 7 من يونكس Version 7 Unix واكتسبت شعبية كوسيلة لإضافة مميزات حسابية إلى مجرى يونيكس. وهناك نسخة من لغة AWK هي السمة المشتركة من حوالي كل نظام تشغيل من يونيكس الحديثة المتاحة اليوم. AWK مذكورة في مواصفات يونكس الواحدة باعتبارها وسيلة إلزامية لنظام تشغيل يونيكس. بالإضافة إلى غلاف بورن Bourne shell، AWK هي لغة البرمجة الوحيدة الآخرى المتاحة في بيئة يونيكس القياسية. وهي أيضا أثبتت وجودها بين الأوامر التي تتطلبها المواصفات القياسية لقاعدة يونكس. تطبيقات AWK موجودة كبرمجيات مركبة تقريبا لجميع أنظمة التشغيل الأخرى. ويكيبيديا:بحاجة لمصدر

تم إنشاء AWK في مختبرات بيل في السبعينات، واسمها مشتق من أسماء أسرة مؤلفيها -- ألفرد أهو وبيتر واينبرغر وبريان كيرنيغان. الاسم لا ينطق كسلسلة من الإحرف المنفصلة وإنما لصوت نفس اسم الأوك من الطيور (الذي يعمل كشعار للغة مثل ما على غلاف كتاب لغة برمجة أووك The AWK Programming Language- الكتاب غالبا ما يشير إليه بالاختصار TAPL)، عندما كتبت أووك كانت كافة الأحرف صغيرة، وتشير إلى يونكس أو برنامج Plan 9 الذي يقوم بتشغيل برامج أخرى مكتوبة بلغة البرمجة AWK.

قوة واختصارية، ,و حدود برامج AWK التي صدرت مبكراً أوحت ل لاري وول Larry Wall ليكتب بيرل Perl كلغة جديدة، أكثر قوة، POSIX AWK و gawk (GNU AWK) تم تعريفهم. على الرغم من أن AWK وsed تم تصميمهما لدعم البرامج واحدة السطور، حتى مختبرات بيل القديمة مستخدمي أووكAWK كثيرا ما كتبوا برامج أووك كبيرة وجيدة التنظيم. رغم مساحتها المحدودة المقصود استخدامها، AWK هي تورنغ كاملة.

مراجع

وصلات خارجية 

 The Amazing Awk Assembler by هنري سبنسر.
 Awk Community Portal
 Awk on flossmanuals.net
 

برامج يونكس القياسية
برمجيات 1977
برمجيات متعددة المنصات
خدمات مواصفات يونكس المنفردة
لغات برمجة أنشئت في 1977
لغات برمجة مخصصة النطاق
لغات برمجة نصية