جريب (يونكس)
نوع | |
---|---|
نظام التشغيل | |
المنصة | |
المطور الأصلي | |
المطورون | |
موقع الويب |
الإصدار الأول | |
---|---|
الإصدار الأخير | 3.3 <المرجع> {{cite web | url = https://lists.gnu.org/archive/html/info-gnu/2018-12/msg00011.html | العنوان = grep-3.3 تم إصداره [مستقر] | الأول = جيم | الماضي = مايرنغ | الناشر = مؤسسة البرمجيات الحرة | التاريخ = 2018-12-20 | accessdate = 2018-12-27}} </ref> |
الرخصة |
grep
هي أداة مساعدة لسطر الأوامر للبحث عن مجموعات بيانات النص العادي للخطوط التي تتطابق مع التعابير النمطية (بالإنجليزية: Regular expression). يأتي اسمه من الأمر ed g / re / p ( g lobally ، ابحث عن r egular e xpression و p rint ) ، والذي له نفس التأثير: إجراء بحث عالمي باستخدام التعبير المنتظم وطباعة جميع خطوط المطابقة. [3] [4] تم تطوير Grep في الأصل لنظام التشغيل Unix ، ولكن تم توفيره لاحقًا لجميع أنظمة Unix المشابهة وبعض الأنظمة الأخرى مثل OS-9 . [5]
التاريخ
قام كين طومسون بكتابة النسخة الأولى من grep بين عشية وضحاها لمساعدة لي ماكماهون في تحليل نص الأوراق الفيدرالية لتحديد تأليف الأوراق الفردية. [6] كان محرر نص ed (مؤلف أيضًا بواسطة Thompson) يدعم تعبيرًا منتظمًا ولكن لا يمكن استخدامه على هذا القدر الكبير من النص ، لذلك قام Thompson باقتطاع هذه التعليمة البرمجية إلى أداة قائمة بذاتها. اختار Thompson الاسم لأنه في ed ، سيطبع الأمر g / re / p جميع الأسطر المطابقة لنمط محدد مسبقًا. [7] [8] تم تضمين grep لأول مرة في الإصدار 4 Unix . مشيرا إلى أنه "استشهد عادة باعتباره أداة برمجية نموذجية"، دوغ ماكلروي الفضل البقرى مع "ingraining لا رجعة فيه" تومسون فلسفة أدوات في يونكس. [9]
مثال
يوضح المثال التالي إخراج الأمر grep
المعطى 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 في العديد من أنظمة التشغيل وبيئات تطوير البرامج. [10] تضمنت المتغيرات المبكرة egrep
و fgrep
، المقدمة في الإصدار 7 Unix . [9] يطبق متغير " egrep
" بناء جملة تعبير عادي موسع تم إضافته إلى Unix بعد تنفيذ التعبير الأصلي العادي من قِبل Ken Thompson بواسطة Alfred Aho . [11] يبحث متغير " fgrep
" عن أي قائمة من السلاسل الثابتة باستخدام خوارزمية مطابقة سلسلة Aho-Corasick . [12] تستمر ثنائيات هذه المتغيرات في معظم الأنظمة الحديثة ، ومع ذلك فقد تم إهمال استخدامها بشكل صريح وأدرجت وظائف هذه المتغيرات في grep
سطر الأوامر -E
و -F
استخدام المفاتيح هو بالتالي طريقة الاستخدام الموصى بها. [13]
الاستخدام كفعل
في ديسمبر 2003 ، أضاف قاموس أوكسفورد للغة الإنجليزية عبر الإنترنت إدخالات مسودة لـ "grep" كاسم وفعل.
استخدام الفعل الشائع هو عبارة "لا يمكنك grep الأشجار الميتة" - يمكن أن يؤدي البحث عن شخص بسهولة إلى البحث من خلال الوسائط الرقمية ، باستخدام أدوات مثل grep ، أكثر مما يمكن باستخدام نسخة ورقية (على سبيل المثال ، واحدة مصنوعة من الأشجار الميتة ، ورقة ). [14] مقارنة مع جوجل .
روابط خارجية
- الموقع الرسمي
- الدليل الرسمي
- "لماذا GNU grep سريع" - تفاصيل التنفيذ من مؤلف GNU grep.
- Network grep - أداة تحليل حزم تستخدم لمطابقة الأنماط في طبقة الشبكة
مراجع
- بوابة برمجة الحاسوب
- بوابة عقد 1990
- بوابة لينكس
- بوابة برمجيات حرة
- بوابة برمجيات
- بوابة تقانة المعلومات
- ^ Kernighan، Brian (1984). The Unix Programming Environment. Prentice Hall. ص. 102. ISBN:0-13-937681-X.
- ^ “grep was a private command of mine for quite a while before i made it public.” -Ken Thompson نسخة محفوظة 2015-05-26 على موقع واي باك مشين., By Benjamin Rualthanzauva, Published on Feb 5, 2014, Medium
- ^ هوبن وآخرون. 1997 ، الفصل 9
- ^ Raymond، Eric. "grep". Jargon File. مؤرشف من الأصل في 2006-06-17. اطلع عليه بتاريخ 2006-06-29.
{{استشهاد ويب}}
: الوسيط غير المعروف|deadurl=
تم تجاهله (مساعدة) - ^ Paul S. Dayan (1992). The OS-9 Guru - 1 : The Facts. Galactic Industrial Limited. ISBN:0-9519228-0-7.
- ^ Computerphile ، من أين جاء برنامج GREP ، مقابلة مع براين كيرنيغان ، https://www.youtube.com/watch؟v=NTfOnGZUZDk
- ^ "ed regexes". perl.plover.com. مؤرشف من الأصل في 2017-10-20. اطلع عليه بتاريخ 2018-04-24.
{{استشهاد ويب}}
: الوسيط غير المعروف|deadurl=
تم تجاهله (مساعدة) - ^ "How Grep Got its Name". robots.thoughtbot.com. مؤرشف من الأصل في 2017-08-09. اطلع عليه بتاريخ 2018-04-24.
{{استشهاد ويب}}
: الوسيط غير المعروف|deadurl=
تم تجاهله (مساعدة) - ^ ا ب (Technical report).
{{cite tech report}}
: الوسيط|title=
غير موجود أو فارغ (مساعدة) - ^ (Technical report).
{{cite tech report}}
: الوسيط|title=
غير موجود أو فارغ (مساعدة) - ^ Hume، Andrew (1988). "A Tale of Two Greps". Software—Practice & Experience. ج. 18 ع. 11: 1063.
- ^ Meurant، Gerard (12 سبتمبر 1990). Algorithms and Complexity. Elsevier Science. ص. 278. مؤرشف من الأصل في 2016-03-04. اطلع عليه بتاريخ 2015-12-12.
{{استشهاد بكتاب}}
: الوسيط غير المعروف|deadurl=
تم تجاهله (مساعدة) - ^ "grep". www.pubs.opengroup.org. The Open Group. مؤرشف من الأصل في 2015-11-28. اطلع عليه بتاريخ 2015-12-12.
{{استشهاد ويب}}
: الوسيط غير المعروف|deadurl=
تم تجاهله (مساعدة) - ^ ملف Jargon ، مقالة "وثائق"