Jannah Theme License is not validated, Go to the theme options page to validate the license, You need a single license for each domain name.

شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية

كيفية استخدام pipe وإعادة التوجيه باحترافية في سطر أوامر Linux

يُعد سطر أوامر لينكس أداة قوية تمنح المستخدم تحكمًا كاملًا في النظام، لكن الاستفادة الحقيقية منه تظهر عند فهم كيفية استخدام Pipe وإعادة التوجيه بشكل صحيح. هاتان الميزتان تسمحان بربط الأوامر ببعضها وتمرير المخرجات بمرونة عالية.

52972123178_c7bc15383d_o-1 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية

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

في هذا الدليل نشرح مفهوم Pipe وإعادة التوجيه في لينكس، مع أمثلة عملية واضحة تساعدك على كتابة أوامر أكثر كفاءة وتنفيذ مهام معقدة بسطر واحد فقط.

ملخص

  • تستفيد أوامر لينكس من Pipe القياسية للإدخال والإخراج ورسائل الخطأ.
  • يُرسل التوجيه تدفق الإخراج إلى ملف بدلاً من نافذة الطرفية.
  • تتيح لك التدفقات ربط الأوامر معًا، بحيث يصبح مُخرج أحدها مُدخلًا لآخر.
  • في لينكس، تُمكّنك التدفقات والتوجيه من استخدام مُخرجات الأوامر بطرق فعّالة. يمكنك حفظها في ملفات، أو استخدامها كمُدخل لأوامر أخرى. إليك ما تحتاج معرفته.

ما هي Pipe ؟

حتوي لينكس، كغيره من أنظمة التشغيل الشبيهة بيونكس، على مفهوم التدفقات. لكل عملية تدفق إدخال يُسمى stdin، وتدفق إخراج يُسمى stdout، وتدفق للأخطاء يُسمى stderr. للتدفقات في لينكس، كما هو الحال في العالم الحقيقي، نقطتا نهاية. لها مصدر (إدخال) ووجهة (إخراج).

قد يأتي تدفق الإدخال من لوحة المفاتيح إلى الأمر، مما يسمح لك بإرسال نصوص، مثل المعلومات أو الأوامر، إلى العملية. أما تدفق الإخراج فيأتي من الأمر، عادةً إلى نافذة الطرفية. يكتب دفق الخطأ القياسي (stderr) أيضًا إلى نافذة الطرفية.

يمكنك إعادة توجيه التدفقات، كما يمكنك توجيهها عبر التدفقات. إعادة التوجيه تعني إرسال المخرجات إلى مكان آخر غير نافذة الطرفية. أما التوجيه عبر التدفقات فيعني أخذ مخرجات أمر ما واستخدامها كمدخلات لأمر آخر.

اقرأ أيضا:  أفضل بدائل لأوامر Linux التقليدية لتحسين تجربة سطر الأوامر

يتيح لك هذا ربط الأوامر معًا لإنشاء حلول متطورة من سلسلة أوامر بسيطة تعمل بتناغم.

إعادة توجيه التدفقات

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

على جهاز الكمبيوتر التجريبي هذا، يُخرج الأمر du 1380 سطرًا من النص. سنرسل هذه البيانات إلى ملف.

du > disk-usage.txt
1-6 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية

يُشير القوس المُقوّس إلى توجيه مُخرجات الأمر du إلى ملف باسم disk-usage.txt. لا تُرسل أي مُخرجات إلى نافذة الطرفية.

يمكننا استخدام الأمر ls للتحقق من إنشاء الملف، والأمر wc لحساب عدد الأسطر والكلمات والأحرف فيه. وكما هو مُتوقع، يُشير الأمر wc إلى أن الملف يحتوي على 1380 سطرًا.

ls 
wc disk-usage.txt
2-7 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية
يُنشئ هذا النوع من إعادة التوجيه الملف أو يستبدله في كل مرة تستخدمه. إذا كنت ترغب في إلحاق النص المُعاد توجيهه بنهاية ملف موجود، فاستخدم قوسين زاويين مزدوجين “>>”، كما يلي.
ls /home/dave-mckay/ -R >> disk-usage.txt 
wc disk-usage.txt 
3-5 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية
باستخدام الخيار -N (أرقام الأسطر) مع الأمر less، يمكننا التحقق من أن المعلومات الجديدة قد تمت إضافتها بعد السطر 1380.
4-4 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية
إذا كتبنا أمرًا يُولّد خطأً، فسوف نرى ذلك، لأننا نقوم فقط بإعادة توجيه stdout، فإن أي رسائل خطأ stderr لا تزال تُرسل إلى نافذة المحطة الطرفية.
wc disk-usage.txt missing-file.txt > results.txt 
wc: missing-file.txt: No such file or directory
cat results.txt

5-3 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية

تُرسل نتائج ملف disk-usage.txt إلى ملف results.txt، بينما تُرسل رسالة الخطأ الخاصة بملف missing-file.txt غير الموجود إلى نافذة الطرفية.

يمكننا إضافة مؤشرات رقمية إلى القوسين الزاويين الأيمنين لتوضيح أي مسار نقوم بإعادة توجيهه. المسار 1 هو stdout والمسار 2 هو stderr. يمكننا إعادة توجيه stdout إلى ملف وstderr إلى ملف آخر بسهولة تامة.

wc disk-usage.txt missing-file.txt 1> results.txt 2> error.txt 
cat results.txt
cat error.txt
6-1 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية
إذا كنت تريد إعادة توجيه كلا التدفقين إلى ملف واحد، فإننا نعيد توجيه stdout إلى ملف، ونخبر الصدفة بإعادة توجيه stderr إلى نفس الوجهة التي سيذهب إليها stdout.
wc disk-usage.txt missing-file.txt 1> results.txt 2>&1
cat results.txt

7-1 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية

تُسجّل جميع رسائل الخطأ وتُرسل إلى نفس الملف الذي تُرسل إليه مخرجات النظام القياسية (stdout).

اقرأ أيضا:  خرافات شائعة عن ألعاب Linux يجب التوقف عن تصديقها

قد لا ترغب في تخزين أيٍّ من المخرجات على الإطلاق، بل تريد فقط عدم كتابة أي شيء في نافذة الطرفية. يُعدّ ملف الجهاز الفارغ، الذي يستهلك كل ما يُرسل إليه دون تنبيه، وجهةً مناسبةً لإرسال مخرجات الشاشة غير المرغوب فيها.

rm disk-usage.txt missing-file.txt 1> /dev/null 2>&1

8-1 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية

لا تُكتب رسائل الإخراج القياسي (stdout) ولا رسائل الخطأ القياسي (stderr) في نافذة الطرفية، على الرغم من أن أحد الملفات التي نحذفها غير موجود.

ومن الحيل الأخرى التي يمكنك استخدامها مع إعادة التوجيه قراءة ملف إلى دفق الإدخال القياسي (stdin) الخاص بالأمر.

wc < /etc/passwd
14-2 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية
يمكنك دمج هذا مع إعادة توجيه المخرجات.
wc < /etc/passwd > results.txt
cat results.txt

15-1 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية

توجيه المخرجات عبر Pipe

تُعيد Pipe توجيه مخرجات أمرٍ ما إلى مدخلات أمرٍ آخر. يُعدّ التوجيه عبر التدفقات من أقوى ميزات سطر الأوامر، ويمكنه تغيير طريقة استخدامك لأوامر وأدوات لينكس الأساسية.

لتوجيه مخرجات أمرٍ ما إلى أمرٍ آخر، نستخدم رمز الأنبوب “|”. على سبيل المثال، إذا أردنا عرض جميع الملفات والمجلدات الفرعية في مجلدك الرئيسي بشكلٍ متكرر، فسترى عرضًا سريعًا لمخرجات الأمر ls في نافذة الطرفية.

بتوجيه مخرجات الأمر ls إلى الأمر less، نحصل على النتائج معروضةً في عارض ملفاتٍ سهل الاستخدام.

ls -R ~ | less

9-1 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية

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

توجيه المخرجات عبر أمر آخر
تظهر فائدة التوجيه بوضوح عندما يقوم الأمر الثاني بمعالجة مخرجات الأمر الأول.

اقرأ أيضا:  لماذا يجب على لينكس الابتعاد عن هذه الميزات الخمسة في ويندوز

لنحسب عدد حسابات المستخدمين وحسابات المستخدمين الوهميين على جهازك. سنستخدم الأمر cat لعرض محتويات الملف /etc/passwd، ثم نمرر الأمر wc عبره. الخيار -l (عدد الأسطر) سيحسب عدد الأسطر في هذا الملف. وبما أن هناك سطرًا واحدًا لكل حساب، فإنه يحسب الحسابات تلقائيًا.

cat /etc/passwd | wc -l
10-1 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية
هذا يبدو كثيرًا. لنلقِ نظرة على أسماء تلك الحسابات. هذه المرة سنستخدم الأمر cat مع الأمر awk. يُطلب من الأمر awk استخدام النقطتين الرأسيتين “:” كفاصل بين الحقول، وطباعة الحقل الأول.
cat /etc/passwd | awk -F: '{print $1}'
11-1 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية
يمكننا الاستمرار في إضافة الأوامر. لفرز القائمة، أضف أمر الفرز بحيث يذهب الناتج من awk إلى أمر الفرز.
cat /etc/passwd | awk -F: '{print $1}' | sort

12-1 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية

توجيه المخرجات عبر سلسلة من الأوامر

إليك مجموعة من أربعة أوامر موصولة بثلاثة Pipe. يعرض الأمر ps قائمة بالعمليات الجارية. الخيار -e (الكل) يعرض جميع العمليات، بينما يحدد الخيار -o (المخرجات) المعلومات المطلوب عرضها. يشير الرمز comm إلى رغبتنا في رؤية اسم العملية فقط.

ثم يتم توجيه قائمة أسماء العمليات إلى الأمر grep، الذي يقوم بتصفية العمليات التي تحتوي على كلمة chrome في اسمها. تُمرر هذه القائمة المُصفاة إلى الأمر sort لترتيبها. ثم تُمرر القائمة المرتبة إلى الأمر uniq. الخيار -c (العدد) يحسب عدد أسماء العمليات الفريدة. وللتجربة، سنكرر العملية نفسها مع متصفح Firefox.

ps -e -o comm | grep chrome | sort | uniq -c
ps -e -o comm | grep firefox | sort | uniq -c
13-1 شرح استخدام Pipe وإعادة التوجيه في أوامر لينكس باحتراف لتحسين الإنتاجية

تركيبات لا حصر لها

لا يوجد حد لعدد الأوامر التي يمكنك دمجها، ولكن انتبه إلى أن كل أمر يُفتح في نافذة فرعية مستقلة. لن يُمثل هذا مشكلة حتى على أجهزة الكمبيوتر الحديثة ذات المواصفات المتواضعة، ولكن إذا لاحظت تباطؤًا، ففكّر في تبسيط أوامرك. أو تحلَّ بالصبر.

إتقان استخدام Pipe وإعادة التوجيه في لينكس يفتح أمامك مستوى جديدًا من التحكم والكفاءة في التعامل مع النظام. هذه الأدوات البسيطة ظاهريًا قادرة على اختصار الكثير من الوقت والجهد.

جرّب تطبيق الأمثلة عمليًا على جهازك، وستلاحظ كيف يمكنك تنفيذ مهام معقدة بأوامر مختصرة واحترافية.

زر الذهاب إلى الأعلى