ما هن Pipe و Grep و Sort في لينكس؟

Pipe و Grep و Sort في لينكس

يعد Pipe أحد الأوامر في Linux؛ يتيح لك استخدام أمرين أو أكثر، إذ يكون إخراج أحد الأوامر بمثابة الإدخال للأمر التالي. باختصار، يعمل إخراج كل عملية مباشرة، كمدخل للعملية التالية؛ تماما مثل خط الأنابيب. يشير الرمز “|” إلى أمر Pipe.

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

لنفهم هذا بواسطة مثال.

عند استخدام الأمر “cat” لعرض ملف يمتد على عدة صفحات، ينتقل الموجه بسرعة إلى الصفحة الأخيرة من الملف، إذ لا ترى المحتوى في منتصف الطريق.

لتجنب ذلك، يمكنك توجيه إخراج الأمر “cat” إلى “less” والذي سيظهر لك طول تمرير واحد فقط للمحتوى في المرة الواحدة.

cat filename | less
Pipe و grep في Linux

أوامر “pg” و “ more “

بدلاً من “less” يمكنك أيضًا استخدام:

cat Filename | pg

أو:

cat Filename | more

ويمكنك عرض الملف في أجزاء قابلة للفهم والتمرير لأسفل بمجرد الضغط على مفتاح الإدخال.

Pipe و grep في Linux

أمر grep

افترض أنك تريد البحث عن معلومات معينة في الرمز البريدي من ملف نصي.

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

بناء الجملة:

grep search_string

لنرى ذلك في العمل:

Pipe و grep في Linux

هنا بحث الأمر “grep” في الملف “sample” عن السلسلة “Apple” و “Eat”.

يمكن استخدام الخيارات التالية بهذا الأمر.

Pipe و grep في Linux

لنجرب الخيار الأول “i-” على نفس الملف المستخدم أعلاه.

باستخدام الخيار “i” نجح grep في تصفية السلسلة “a” (غير حساسة لحالة الأحرف: case-insensitive) من جميع الأسطر.

أمر sort

يساعد هذا الأمر في فرز محتويات الملف أبجديًا.

صيغة هذا الأمر هي:

sort Filename

ضع في اعتبارك محتويات الملف.

باستخدام الأمر sort.

Pipe و grep في Linux

هناك امتدادات لهذا الأمر أيضًا وهي کما يلي:

Pipe و grep في Linux

يوضح المثال أدناه الفرز العكسي للمحتويات في ملف “abc”.

Pipe و grep في Linux

ما هو Filter؟

يحتوي Linux على الكثير من أوامر التصفية مثل awk و grep و sed و spell و wc. يأخذ المرشح المدخلات من أمر واحد ويقوم ببعض المعالجة ويعطي الإخراج.

عند توجيه أمرين، يتم إعطاء الإخراج “filtered” للأمر الأول إلى التالي.

دعونا نفهم هذا بمساعدة مثال.

لدينا الملف “sample” التالي.

نريد إبراز الأسطر التي لا تحتوي على الحرف “a” فقط ولكن النتيجة يجب أن تكون بترتيب عكسي؛ لهذا يمكن استخدام بناء الجملة التالي.

cat sample | grep -v a | sort – r

أخيرا لنلقي نظرة على النتيجة.

Pipe و grep في Linux

ملخص

  • ترسل الأنابيب “|” إخراج أمر واحد كمدخل لأمر آخر.
  • يأخذ عامل التصفية المدخلات من أمر واحد ويقوم ببعض المعالجة ويعطي الإخراج.
  • يمكن استخدام الأمر grep للعثور على سلاسل وقيم في مستند نصي.
  • يجب أن يكون استخدام الأنابيب من خلال grep ـ أحد الاستخدامات الأكثر شيوعًا
  • الأمر “Sort” يفرز محتوى الملف أبجديًا
  • يستخدم less, more و pg وما إلى ذلك لتقسيم ملف طويل إلى بتات قابلة للقراءة.

المصدر

منشور ذات صلة
البرمجة التصريحية 10 Minutes

البرمجة التصريحية (Declarative Programming)| هل هي شيء حقيقي؟

جاسم ناظري

يحمي DSL المستخدمين من التركيبات منخفضة المستوى الفوضوية مع الاستمرار في تحقيق الحالة النهائية المطلوبة. بينما تقدم البرمجة التصريحية مزايا مقارنة بالنهج الإلزامي الذي تحل محله إلا أنها ليست مباشرة كما قد تبدو.

اترك تعليقاً

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

السلة