الطرفية التي تعرف باسم سطر الأوامر هي الأداة التي ترافق المبرمجين بمختلف اختصاصاتهم، فهي تعد النقطة المشتركة بينهم جميعاً
احترافها وتسهيل التعامل معها يدل على قوة مستخدمها وهنا سنشرح المسار الذي سنقوم بإعطائه في هذه المدونة
ما المقصود بسطر الأوامر
واجهة سطر الأوامر (CLI) هي آلية برمجية تستخدمها في التفاعل مع نظام التشغيل لديك باستخدام لوحة المفاتيح.
ومن الآليات الأخرى واجهة المستخدم الرسومية (GUI)، وهي آلية يكثر استخدامها في جميع التطبيقات والأنظمة البرمجية. يُمكنك استخدام واجهة المستخدم الرسومية (GUI) للتنقل بصريًا والنقر فوق الأيقونات والصور لجعل الأشياء تعمل.
ومع ذلك، فإن واجهة المستخدم الرسومية (GUI) ليست فعالةً في مهام إدارة النظام، وخاصةً إذا كانت البيئة افتراضية أو عن بُعد.
هذا التعريف مقتطف من تدوينة “ما المقصود بواجهة سطر الأوامر (CLI)؟ (واجهة سطر الأوامر)“
ما الفرق بين CLI و GUI
هما واجهات الاستخدام والفرق جوهري بينهما ! لذلك سأذكر لكم كل مسمى على حدى
CLI Or Command Line Interface
والمقصود بها واجهة سطر الأوامر ويمكن القول أنها الشاشة السوداء، التي يتم استخدام لوحة المفاتيح فقط معها
أي لا أيقونات لا رموز ولا أي تصميم مذهل
مميزات
- سرعة في التنفيذ
- دقة في التنفيذ و المعطيات
- كفاءة استخدام الطاقة
- سهول الوصول
- إمكانية الوصول إلى الوظائف المتقدمة
عيوب
- صعبة للمبتدئين
- يمكن أن تؤدي لأخطاء كارثية لغير المتمرسين
GUI Or Graphical User Interface
والمقصود واجهة المستخدم الرسومية وهي كل ما تراه على حاسوبك من خلال تصاميم خلابة
مثل سطح المكتب والبرامج التي تتصفحها يومياً
مميزات
- سهل الاستخدام
- انطباع إيجابي أثناء الاستخدام للتصاميم الجذابة
- وضوح بصري
- تنوع
- ترفيه
العيوب
- استهلاك للموارد
- تكلفة عالية
ما المقصود ب bash و shell
هما مصطلحان قريبان مع بعضهما جداً ولا يكاد الفرق كبير بينهما لكن مختصر الكلام أن shell هي الأساس
تقوم shell بالتخاطب والتفاعل مع النظام فهو المترجم بيننا وبين نواة النظام (مكون من المكونات الأساسية في النظام)
أم bash فهي نوع من أنواع ال shell الشهيرة التي تستخدم بكثرة في أنظمة تشغيل لينكس
ماذا سنتعلم في هذا الدورة
سنتعلم أساسيات التعامل معها بدروس مخصصة لـ shell وستكون هناك بعض الدروس المخصصة لأنظمة Linux والبعض الأخر لـ bash
لا تقلق سنخبرك بذلك وأنت حر في النهاية لكن سيفوتك الكثير
محتويات الدورة
أولاً الدورة ستكون مكتوبة بشكل مقالات لكن مع شرح تفصيلي للأوامر، والسلسلة ستكون تفصيلية وليس كشرح الكثير بمعنى أصح ستصبح على أدراك بما تفعل وذلك عن فهم وليس عن حفظ
لمن موجهة
المبرمجين بشكل عامل (التعامل مع سطر الأوامر ليس ضرورياً اليوم بل شيء أنت مجبر عليه بطريقة أو بأخرى)
فإذا كنت مبرمج أو تميل إلى (front-end/back-end/dev ops/cyber-security) فهو ضروري جداً وستستفيد من هذه السلسة
المحتويات
- شرح نظري عن ماهي BASH (في هذه التدوينة كتبنا نبذة عنها)
- تحضير بيئة العمل
- تحدث المستودعات والبرامج (update Vs upgrade) Linux
- سرد الملفات والمجلدات
- قراءة تفاصيل أمر معين
- إنشاء وحذف المجلدات والملفات
- قراءة الملفات
- التعامل مع الملفات والمجلدات (نسخ – لصق – معرفة الحجم)
- الإدخال والإخراج القياسي
- مدخل إلى الصلاحيات (جميع دروس الصلاحيات خاصة بنظام Linux بشكل خاص)
- الفرق بين المستخدم والمالك والمجموعة
- المستخدمين
- المجموعات
- الصلاحيات بشكل عملي
- ضغط الملفات وفك ضغطها
- التحكم في أجهزة التخزين (فلاشه USB – هارد خارجي) Linux
- عرض معلومات المعالج ومعلومات الرام وبعض المعلومات الإضافية Linux
- التعديل على متغيرات النظام Linux
- التعامل مع أنظمة ترميز مشهورة مثل: (Base64 – Base32)
- قراءة السجلات Linux
- معلومات حول الشبكة Linux
- إنشاء اتصال مخصص وتحميل الملفات
- العمليات النشطة (إيقافها بشكل مؤقت – إيقافها بشكل كامل – إنشاء عملية تسير في الخلفية) Linux
- البحث في الملفات
- التعامل مه بروتوكول SSH
- شرح عن GIT
- التعامل مع المدخلات في BASH
بعض الأسئلة المهمة
في حال طرحت بعض الأسئلة أو تحتاج لمعلومات إضافية قبل تعلمك هذه الدورة فأدعوك لقراءة الأسئلة التالي:
هل سنتعلم التعامل مع Unix
الدورة مخصصة لأسطر الأوامر التي تتعامل مع أي نوع من الشل shell سواء كان bash أو zsh
و unix تستخدم نفس نوع الشل أو مشتقاته التي تستخدم في توزيعات Linux والمدمجة بأسطر الأومر مثل bash و zsh المبنية على بورن شل (Bourne shell)
وغالباً لن تجد اختلاف بالأوامر الأساسية، وفي حال كان سيكون اختلاف طفيف (أي لن ولم يتغير أمر إلى أخر كتحول أمر الحذف للإنشاء)
هل أنا بحاجة للتطبيق العملي
نعم، وهذا ينطبق على أي مجال أو كورس في البرمجة؛ عدم تطبيقك سيعرضك للنسيان وأنصحك دائماً بتطبيق نفس التطبيقات الموجودة ولو قمت بالاستعانة بالواجهة الرسومية لتحضير مختبرك
هل الكاتب لديه خبرة
نعم، أنا أستخدم سطر الأوامر منذ أكثر من سنتين، أخذت العديد من الدورات فيه واستطعت إدارة بعض الخوادم لعملائي واكتسبت العديد من الخبرات بكيفية التعامل مع سطر الأوامر وتنفيذ هذه الأوامر بالشكل المطلوب
في الختام
كما ذكرت سوف أقوم بشرح المفاهيم المهمة في سطر الأوامر بعدما تعرفنا على ماهو سطر الأوامر، ومحتويات الدورة
في حال ظننت أنّ هناك مشكلة فرجاءً تواصل معي عبر صفحة التواصل وفي حال لم يكن وأعجبت بالمقالة فخذ لك نظرة على المقالات الموجودة في موقع مدونة يحيى