كمسؤول، قد تقوم بشكل منتظم بتشغيل أمر الايكو في باش عند إدارة نظام لينكس. ولكن هل طباعة النصوص هي كل ما يمكن أن يقدمه أمر الايكو؟
في هذا البرنامج التعليمي، ستلقي نظرة عن كثب على أمر الايكو وتتعلم بعض الأمثلة العملية الأكثر فائدة.
هل أنت جاهز؟ تابع وغيّر فكرتك عن أمر الايكو!
المتطلبات الأساسية
يشمل هذا البرنامج التعليمي عروضًا عملية. لمتابعته، تحتاج فقط إلى جهاز أوبونتو. يستخدم هذا البرنامج التعليمي أوبونتو 20.04، ولكن توزيعات لينكس أخرى ستعمل أيضًا.
طباعة السلاسل باستخدام أمر الايكو في بش شيل
عندما تفكر في أمر الايكو، أول شيء يتبادر إلى الذهن هو طباعة قيم السلاسل على وحدة التحكم. نعم، يعيد أمر الايكو السلاسل مباشرة من أمر أو سكربت.
ولكن في وقت لاحق في هذا البرنامج التعليمي، سترى أمر الايكو من منظور مختلف. الآن، انظر كيف يقوم هذا الأمر بطباعة السلاسل على وحدة التحكم.
صيغة أمر الايكو هي على النحو التالي حيث:
- سلسلة – النص المطبوع.
- خيارات – الوسائط الاختيارية التي يمكنك تحديدها لتعديل النتيجة.
قم بتشغيل أمر الايكو أدناه بدون إضافة خيارات لطباعة نص بسيط على وحدة التحكم. يمر هذا الأمر السلسلة كوسيط إلى أمر الايكو.

كبح الأسطر الجديدة الزائدة في السلاسل
تقوم أمر الـ echo بإضافة حرف تجاوب جديدة في نهاية كل سلسلة افتراضيًا. نتيجة لذلك، عند طباعة سلاسل متعددة، قد يتم طباعة كل سلسلة في سطر جديد.
يقوم الخيار -n بإخفاء الأحرف التجاوبية التي تلي السلاسل ويعطي أمر echo تعليمات بطباعة السلاسل المتعددة في سطر واحد. يمكن أن يكون هذا الخيار مفيدًا، على سبيل المثال، عند طباعة شريط تقدم إلى وحدة التحكم.
قم بتشغيل الأمر أدناه لطباعة “Progress:” و “50٪”.
أدناه، يمكنك رؤية الأحرف التجاوبية تفصل السلاسل الاثنين.

الآن، قم بتشغيل الأمر التالي، مع إضافة الخيار -n، لطباعة سلاسل “Progress:” و “50٪”.
كما يمكنك رؤية أدناه، تم وضع كلا السلاسل في سطر واحد الآن بما أنك استخدمت الخيار -n لإخفاء الأحرف التجاوبية.

طباعة قيم المتغيرات
عند كتابة نص برمجي، عادةً ما تقوم بتخزين قيمة مؤقتة في متغير، والذي يمكنك طباعته باستخدام أمر echo. يمكن أن تكون هذه الوظيفة مفيدة عند التحقق من قيمة متغير لتصحيح نص برمجة الشل.
قم بتشغيل الأوامر أدناه لتعيين قيمة المتغير number إلى 10 وطباعة (echo) القيمة إلى وحدة التحكم.

تفسير تسلسلات الهروب
تسلسل الهروب هو سلسلة من الأحرف تمثل حرفًا خاصًا، ويمكنك استخدام الخيار -e لتفسير تسلسلات الهروب.
على سبيل المثال، تمثل سلسلة الهروب \t حرف تبويب. إذا استخدمت الخيار -e وطبعت \t إلى وحدة التحكم، سيتم تفسير \t كحرف تبويب بدلاً من طباعتها حرفياً.
بعض أكثر سلاسل الهروب شيوعًا هي كالتالي:
Escape Sequence | Function |
\b | backspace |
\t | tab |
\n | new line |
\\ | backslash |
\$ | dollar sign |
قم بتشغيل الأمر التالي لطباعة Hello\tWorld إلى وحدة التحكم.
يمكنك أن ترى أدناه أن أمر الصدى قام بطباعة سلسلة Hello\tWorld كما هي.

الآن، قم بتشغيل الأمر أدناه لطباعة Hello\tWorld، ملحقًا الخيار -e لتفسير \t كحرف تبويب في الوسط.
لاحظ الفجوة الكبيرة أدناه بين كلمة Hello و World.

إدراج السلاسل في سطر جديد
طباعة سلسلة طويلة من النص تجعل المستخدم يصعب قراءة كاملها. لحسن الحظ، يسمح لك الخيار \n بإضافة حرف سطر جديد في منتصف السلسلة. يُستخدم هذا الخيار في الغالب عند طباعة عدة أسطر نصية إلى وحدة التحكم، مما يعطي وضوحًا للنص الفعلي.
قم بتشغيل الأمر أدناه لطباعة سلسلة Echo command bash\nAnother line، حيث يقسم الخيار \n السلسلة إلى سطرين.
أدناه، يمكنك أن ترى أن الخيار \n وضع السلسلة Another line في سطر جديد.

إدراج علامات التبويب العمودية بين السلاسل
لقد رأيت كيفية وضع سلسلة الهروب \t حرف تبويب أفقي بين السلاسل. ولكن ماذا عن تبويب عمودي؟ يتيح لك الخيار \v فصل السلاسل في علامات تبويب عمودية، مما يجعله مثاليًا لصنع لافتات نصية.
يُستخدم هذا الخيار في الغالب عند طباعة عدة أعمدة من النص إلى وحدة التحكم، حيث يكون كل عمود في سطر جديد مع مسافة تبويب جديدة في البداية.
تشغيل الأمر التالي لطباعة النص “Echo command bash demo”، ولكن مع تباعد عمودي (\v) بين كل كلمة.

طباعة أسماء الملفات بناءً على الامتداد
إذا كنت تبحث عن طريقة للعثور على الملفات ذات النوع المحدد، فإن هذه الميزة من أمر الصدى تعمل بنفس الطريقة. يدعم أمر الصدى عرض الملفات في دليل مع امتداد محدد باستخدام الحرف البديل (*).
1. قم بتشغيل الأمر التالي لطباعة جميع الملفات التي تنتهي بامتداد .txt في الدليل الحالي.

2. بعد ذلك، قم بتشغيل الأمر التالي لطباعة جميع الملفات التي تنتهي بامتداد الملف .deb في الدليل الحالي.

3. وأخيرًا، قم بتشغيل الأمر التالي لطباعة الملفات ذات الامتداد .txt في دليل ~/Downloads. يمكنك استبدال ~/Downloads/ بمسار الدليل الفعلي للملفات الخاصة بك.
يمكنك أن ترى أدناه أن أمر الصدى يدعم تحديد مسار الدليل حيث توجد ملفاتك.

كتابة الناتج إلى ملف
عندما يعيد أمرك إخراجًا ضخمًا، يمكن بالكاد قراءة كل شيء على واجهة التحكم. كتابة الإخراج إلى ملف بدلاً من ذلك فكرة رائعة. ولكن كيف؟ بالإضافة إلى طباعة النصوص إلى واجهة التحكم، يدعم أمر الـ echo أيضًا كتابة الإخراج مباشرة إلى ملف.
قم بتشغيل الأمر أدناه، الذي لا يوفر إخراجًا لأن الإخراج مكتوب (>) إلى ملف يسمى echo-bash.txt بدلاً من ذلك.
تنبيه: إذا كان الملف echo-bash.txt موجودًا بالفعل، سيتم الكتابة فوقه بالمحتوى الجديد.
الآن، قم بتشغيل أمر cat التالي لعرض محتويات الملف echo-bash.txt.
كما يمكنك رؤية أدناه، يتم كتابة إخراج أمر الـ echo إلى ملف echo-bash.txt.

إضافة الإخراج إلى الملفات الحالية
كما ذكر سابقًا، يقوم المشغل > بالكتابة فوق ملف موجود بمحتوى جديد. ولكن ماذا لو كنت ترغب في إلحاق الإخراج بملف موجود بدلاً من كتابة فوقه؟
بدلاً من مشغل واحد >، قم بجعله اثنين >>. تساعد هذه الميزة في الاحتفاظ بالمحتوى الحالي وإلحاق إدخالات جديدة في نهاية الملف.
قم بتشغيل الأمر أدناه لإلحاق (>>) نصوص جديدة (إلحاق النص) بملف echo-bash.txt الحالي.
الآن، قم بتشغيل أمر cat التالي لعرض محتويات الملف echo-bash.txt.
كما يمكنك رؤية أدناه، يتم إلحاق إخراج أمر الـ echo بالملف دون كتابة أي شيء فوقه.

الختام
الأمر echo في قشرة الباش هو أداة بسيطة ولكن قوية يمكن استخدامها في العديد من الطرق. وفي هذا البرنامج التعليمي، لقد تعلمت كيفية الحصول على أقصى استفادة من أمر echo مع بعض خياراته الأكثر شيوعًا.
طباعة النصوص على وحدة التحكم لم تعد مجرد “طباعة نصوص” بعد الآن. لقد رأيت كيفية كتابة الإخراج إلى ملف، وإلحاق الإخراجات، وتغيير شكل كل نص مطبوع.
لماذا لا تختار بعض الطرق التي يمكنك استخدام أمر echo وتكتبها في نصوصك؟ انظر إلى الطرق الإبداعية التي يمكن أن تبتكرها!