تعرف على أبرز برامج الطرفية في لينكس لتحسين تجربة سطر الأوامر

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

تعرف على أبرز برامج الطرفية في لينكس لتحسين تجربة سطر الأوامر - %categories

يستفيد Linux من المبادئ الأخلاقية القوية لتصميم Unix. تتواصل البرامج عبر النص، ويمكنك دمجها عبر خطوط الأنابيب، وهي تؤدي شيئًا واحدًا جيدًا. ولكن بخلاف ذلك، يمكن للبرامج أن تعمل بشكل مختلف جدًا وتظهر العديد من السلوكيات المختلفة.

عمليات الخلفية

يقوم نظام التشغيل متعدد المهام، مثل Linux، بتشغيل العديد من البرامج المختلفة في وقت واحد. تُعرف تلك التي تعمل دون أن يتحكم فيها المستخدم بشكل مباشر باسم عمليات الخلفية. لا يوجد سوى نوع واحد من عمليات الخلفية، والمعروفة باسم “daemon”.

1. Daemon

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

غالبًا ما تنتهي أسماء الديمونات بحرف “d”، على سبيل المثال httpd (خادم الويب Apache)، وinetd (خادم خدمة الإنترنت)، وsystemd.

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

واجهة سطر الأوامر

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

اقرأ أيضا:  حماية بياناتك: كيفية إعداد النسخ الاحتياطي التلقائي على Ubuntu باستخدام Deja Dup

2. Cantrip

يعمل أبسط نوع من البرامج – المسمى بشكل غير رسمي “cantrip” – ببساطة بدون إدخال أو إخراج. تعمل هذه البرامج غالبًا على الملفات أو تؤدي مهام مسؤول النظام ذات الصلة. يعد برنامج rm، الذي يحذف ملفًا، مثالاً نموذجيًا:

rm myfile.txt

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

تعرف على أبرز برامج الطرفية في لينكس لتحسين تجربة سطر الأوامر - %categories

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

3. Filter

إن العديد من برامج Linux هي العكس تمامًا: فهي تتطلب الإدخال وتنتج الإخراج. غالبًا ما تعدل هذه البرامج مدخلاتها بطريقة ما، وهناك الكثير منها: cut وhead وsort وuniq وما إلى ذلك.

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

تعرف على أبرز برامج الطرفية في لينكس لتحسين تجربة سطر الأوامر - %categories

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

4. Sink

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

غالبًا ما تخرج المصارف إلى وسائط أخرى غير الشاشة، مثل برنامج espeak الذي يحول النص إلى كلام صوتي.

5. Source

العكس من Sink هو “المصدر”، وهو برنامج ينتج مخرجات دون معالجة أي مدخلات. تحصل برامج المصدر على بياناتها من مكان آخر: البيئة أو ملف يسمى كحجة، على سبيل المثال.

اقرأ أيضا:  ما هو Proton for Steam ، وكيف يؤثر على الألعاب على Linux؟

يستخدم برنامج ls طرقًا مختلفة لسرد الملفات، لكنه لا يعالج المدخلات القياسية أبدًا. في أبسط حالاته، لا يحتاج ls حتى إلى أي حجج:

ls

بشكل افتراضي، يعمل الأمر ls على الدليل الحالي، ويطبع محتوياته. يمكنك عرض تفاصيل دليل أو ملف أو مجموعة ملفات مختلفة عن طريق تمرير وسيطات سطر الأوامر:

ls /tmp
ls /etc/passwd
ls ~/.*

6. المترجم

المترجم هو، بلا شك، النوع الأكثر تعقيدًا من برامج واجهة سطر الأوامر، وعادة ما يكون مخصصًا للبرمجة. يعمل المترجم مثل أي برنامج آخر، ولكن قد يستغرق وقتًا أطول للانتهاء نظرًا لأن عمله قد يكون معقدًا للغاية.

غالبًا ما تنتهي أسماؤهم بـ “c” لـ “compiler”: cc، javac، أو rustc. المترجم يشبه إلى حد ما cantrip، ولكنه يعمل دائمًا مع الملفات، ويحول نوعًا واحدًا من البيانات إلى نوع آخر.

يوضح المترجم c، cc، السلوك النموذجي للمترجم:

cc file1.c file2.c -o program

يقوم هذا الأمر بتشغيل المترجم على ملفين — file1.c وfile2.c — لتوليد ملف ثالث يسمى البرنامج. هنا، تشير الوسيطة “-o” إلى “ملف الإخراج”.

من المهم ملاحظة أن المترجم قد يقوم باستخراج ملفات إضافية، اعتمادًا على مهمته أو اللغة الأساسية. يمكن لبرنامج c مثل file1.c أن يتضمن ملف رأس (مثل file1.h) سيحدده المترجم ويستخدمه لتوليد البرنامج النهائي، على الرغم من أنه غير مسمى صراحةً عند تشغيل الأمر.

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

البرامج التفاعلية

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

7. سطرًا بسطر

أبسط أشكال التفاعل هو سطر واحد في كل مرة. في بداية تاريخ يونكس، كانت هذه الأوامر شائعة جدًا لأنها كانت تعمل على أجهزة الكتابة عن بعد: آلات كاتبة مجيدة تعمل على سطر واحد في كل مرة.

اقرأ أيضا:  يمكنك تثبيت برنامج WinRAR الشهير لإدارة الأرشيف على Linux

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

تعرف على أبرز برامج الطرفية في لينكس لتحسين تجربة سطر الأوامر - %categories

يُظهِر نص ed هذا أوامر تكتب النص “hello world” إلى ملف يسمى foo.txt. يكتب المستخدم بعض هذه الأسطر: “a” هو أمر لإضافة نص إلى المخزن المؤقت، و”,p” يطبع المخزن المؤقت الحالي، و”w” يكتب المخزن المؤقت إلى ملف. بعد الكتابة، يُبلغ ed عن عدد البايتات المكتوبة، في هذه الحالة 13.

نصيحة
إذا كنت تتذكر شيئًا واحدًا عن ed، فيجب أن يكون الأمر “q” الذي ينهي البرنامج. لن يحفظ أي نص جديد أدخلته، ولكن إذا قمت بتشغيل ed عن طريق الخطأ، فإن كتابة “q” متبوعًا بـ Enter سيسمح لك بتركه في أسرع وقت ممكن!

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

8. TUI

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

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

تعرف على أبرز برامج الطرفية في لينكس لتحسين تجربة سطر الأوامر - %categories

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

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

قد يعجبك ايضا