grep هي اداه سهله الفهم متوفره علي جمعيع انظمه تشغيل لينكس
اداه grep هي اداه تستخدم للبحث عن البيانات النصيه وايجادها بسرعه ودقه
نظره سريعه علي استخدام اداه grep
في هذا المثال سنفترض ان لدينا ملف نصي باسم test_file.txt ويحتوي علي النص التالي
وبعدها سنقوم بتجربه grep علي هذا الملف
#bash
[ma@linux-distro ~]$ grep the test_file.txt
#output
The weather is really good today
these are my favorite days in the week
يمكنك النظر علي الصوره التاليه لايضاح ناتج عمليه البحث من خلال اداه
grep
من خلال المثال السابق يمكننا ان نستنتج ان الاداه تضع حاله الاحرف في الحسبان
تثبيت الاداه علي نظام التشغيل
اداه grep تاتي بشكل افتراضي مع معظم انظمه لينكس لكن اذا لم تكن مثبته علي نظامك يمكنك تثتيتها من خلال الاوامر التاليه مع مراعاه نظام التشغيل الخاص بك
#Debian/Ubuntu
$ sudo apt-get install grep
#RHEL/CentOS/Fedora
$ sudo yum install grep
#Arch/Manjaro
$ sudo pacman -S grep
شرح الاداه
ملاحظه: سوف نطبق شرح الاداه بالاستعانه بالمثال السابق
[ma@linux-distro ~]$ grep the test_file.txt
The weather is really good today
these are my favorite days in the week
![]()
grep ==> في المثال السابق هو اسم الاداه والذي يجب كتابته لاستخدامها
the ==> تمثل النص الذي نحاول البحث عنه باستخدام grep
test_file.txt ==> يمثل المستند النصي الذي نريد البحث في داخله
[ma@linux-distro ~]$ grep "The weather" test_file.txt # يمكننا ان نلاحظ اننا كتبنا(The) بدلا من (the)
The weather is really good today
“the weather” ==> هي جمله وبها مسافه ولذلك يجب علينا استخدام علامتين التنصيص ( “” ) او علامه التنصيص الواحده (‘’)
![]()
شرح بعض الخيارات المفيده للاداه
1. خيار i- يستخدم لجعل الاداه تهمل حاله الاحرف
من خلال الامثله السابقه يمكننا ملاحظه ان اداه grep تضح حاله الاحرف في الحسبان
ولكن يمكننا استخدام خيار من خيارات الاداه لجعلها تبحث بدون مراعاه حاله الاحرف
[ma@linux-distro ~]$ grep -i the test_file.txt # نلاحظ استخدام الخيار i قبل الكلمه او الجمله المراد البحث عنها
The weather is really good today
these are my favorite days in the week
ملاحظه: يتم كتابه الخيارات بعد اسم الاداه واضافه
-ليكون الخيار بالشكل بهذا الشكل -i
![]()
2. خيار n- يستخدم لجلب رقم الاسطر التي وجدت بها الكلمه \ الكلمات المراده
من خلال الامثله السابقه كان من السهل علينا ادارك ان هذه الاداه تقوم بالبحث داخل الملف وتقوم باعلامنا اذا وجدت الكلمه دون ان تخبرنا بمكانها داخل هذا الملف لذلك اذا اردنا معرفه مكان القطعه النصيه المراده يمكننا ذلك عن طريق هذا الخيار
[ma@linux-distro ~]$ grep -n the test_file.txt
7:The weather is really good today
9:these are my favorite days in the week
![]()
اذن السطر رقم 7 و السطر رقم 9 هما الاسطر التي يتواجد بها النمط النصي الذي قمنا بالبحث عنه
3. خيار w- يستخدم للبحث فقط عن ما يطابق الكلمه \ الكلمات
من خلال هذا الاختيار يمكننا ان نجد نمط نصي بعينه فقط
[ma@linux-distro ~]$ grep -w the test_file.txt
these are my favorite days in the week
![]()
4. خيارr- يستخدم للبحث بداخل الملفات
اذا استخدمنا هذا الخيار فيمكن ل grep البحث عن النمط المراد لكن بداخل المسار الذي سوف نحدده
ملاحظه: بافتراض ان ملف test_file.txt موجود الان في المسار التالي Downloads/test-dir/test_file.txt
[ma@linux-distro ~]$ grep -r the Downloads/test-dir
Downloads/test-dir/test_file.txt:The weather is really good today
Downloads/test-dir/test_file.txt:these are my favorite days in the week
![]()
يمكنك الاجابه علي هذا السؤال لتتاكد من فهمك للاداه و الخيارات التي تم شرحها
بافتراض اننا الان بداخل مجلد مساره هو Downloads/test-dir يحتوي علي العديد من المستندات النصيه ونريد التالي
- نريد ان نبحث بداخل هذا المجلد عن كلمه معينه بيعنها فقط وهي كلمه
the - نريد من الاداه ان تهمل حاله الاحرف
- نريد من الاداه ان تظهر رقم الاسطر للكلمه المراد البحث عنها
الاجابه
[ma@linux-distor test-dir]$ grep -iwnr the .
و في النهايه يمكنك ان تعرف المزيد عن خيارات الاداه عن طريق كتابه الامر
[ma@linux-distor ~]$ grep --help
المصادر
ترخيص
هذا الموضوع يتبع ترخيص جميع مواضيع أسس هو CC-BY-SA 4.0
هذا الموضوع فائز بجائزة أسس للكتابة
هذا الموضوع فائز بجائزة أسس للكتابة وهي اول جائزة عربية مخصصة للكتابة عن البرمجيات الحرة والمفتوحة.
الموضوع متوفر على مدونة gnulinuxsa هنا:

