جريب (يونكس)

grep هي أداة مساعدة لسطر الأوامر للبحث عن مجموعات بيانات النص العادي للخطوط التي تتطابق مع التعابير النمطية  يأتي اسمه من الأمر ed،  g/re/p (globally regular expression & print)، والذي له نفس التأثير: إجراء بحث عالمي باستخدام التعبير المنتظم وطباعة جميع خطوط المطابقة.

تم تطوير Grep في الأصل لنظام التشغيل Unix، ولكن تم توفيره لاحقًا لجميع أنظمة Unix المشابهة وبعض الأنظمة الأخرى مثل OS-9.

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

اختار تومسون الاسم لأنه على محرر ed، سيطبع الأمر g/re/p جميع الأسطر المطابقة لنمط محدد مسبقًا. تم تضمين grep لأول مرة في الإصدار 4 يونكس. مشيراً إلى أنه «استشَهد باعتباره أداة برمجية نموذجية»، دوغ ماكلروي اعتبر جريب «لا رجعة فيه» مع فلسفة أدوات تومسون في يونكس.

استخدام عادي 
يوضح المثال التالي أوامر grep بنتائج مختلفة

$ grep root /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin

$ grep -n root /etc/passwd
1:root:x:0:0:root:/root:/bin/bash
12:operator:x:11:0:operator:/root:/sbin/nologin

$ grep -c false /etc/passwd
7

الاختلافات 
تتوفر مجموعة متنوعة من تطبيقات grep في العديد من أنظمة التشغيل وبيئات تطوير البرامج تضمنت المتغيرات المبكرة egrep و fgrep، المقدمة في الإصدار 7 Unix.  يطبق متغير " egrep " بناء جملة تعبير عادي موسع تم إضافته إلى Unix بعد تنفيذ التعبير الأصلي العادي من قِبل Ken Thompson بواسطة Alfred Aho.
يبحث متغير " fgrep " عن أي قائمة من السلاسل الثابتة باستخدام خوارزمية مطابقة سلسلة Aho–Corasick 
تستمر ثنائيات هذه المتغيرات في معظم الأنظمة الحديثة، ومع ذلك فقد تم إهمال استخدامها بشكل صريح وأدرجت وظائف هذه المتغيرات في grep سطر الأوامر -E و -F استخدام المفاتيح هو بالتالي طريقة الاستخدام الموصى بها.

الاستخدام كفعل 
في ديسمبر 2003، أضاف قاموس أوكسفورد للغة الإنجليزية عبر الإنترنت إدخالات مسودة لـ "grep" كاسم وفعل.

استخدام الفعل الشائع هو عبارة "You can't grep dead trees" - يمكن أن يؤدي البحث عن شخص بسهولة إلى البحث من خلال الوسائط الرقمية، باستخدام أدوات مثل grep، أكثر مما يمكن باستخدام نسخة ورقية (على سبيل المثال، واحدة مصنوعة من الأشجار الميتة، ورقة) مقارنة مع فعل جوجل.

روابط خارجية 
 
 الدليل الرسمي
 «لماذا GNU grep سريع» - تفاصيل التنفيذ من مؤلف GNU grep.
 Network grep - أداة تحليل حزم تستخدم لمطابقة الأنماط في طبقة الشبكة

المراجع 

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