تعلّم البرمجة بلغة كوتلن (4): سطر الأوامر

تعلّم البرمجة بلغة كوتلن (4): سطر الأوامر
استمع إلى المقال

أثناء العمل على الحاسب، نحتاج إلى إخبار نظام التشغيل (Operating System) الذي يدير جهاز الحاسب، بالمهمة التي نود منه أن يقوم بها نيابة عنا. فتح برنامج المتصفح، أو برنامج الطقس… الخ.

لفعل ذلك، نحن دائمًا ما نتبع إحدى الطريقتين: كتابة الأوامر حرفيًا بلوحة المفاتيح عبر واجهة سطر الأوامر Command-Line interface (CLI)، أو بطريقة مرئية باستخدام الفأرة عبر الضغط على أزرار الواجهة الرسومية Graphical user interface (GUI) التي يوفرها نظام التشغيل.

لماذا واجهة سطر الأوامر CLI:

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

في الماضي، كانت واجهات سطر الأوامر هي الوسيلة الوحيدة للتفاعل مع الحاسب. لكن لماذا نستخدمها الآن، بعد أن أصبح لدينا واجهات رسومية بسيطة وسهلة الاستخدام، توفرها أنظمة التشغيل والبرامج؟

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

مترجمات واجهة سطر الأوامر CLI:

يتم كتابة شيفرات البرامج التي يمكن تنفيذها عبر سطر الأوامر، بلغة الأوامر Command Language. يطلق عليها برامج shell scripts على أنظمة يونيكس UNIX والأنظمة الشبيهة بيونيكس مثل، غنو/لينوكس GNU / Linux ونظام ماك mac OS، وملفات batch على نظام Windows.

لغة الأوامر هذه، يمكننا كتابتها على برامج تترجمها إلى لغة الآلة. من ضمن هذه البرامج، لدينا CMD في الويندوز، وبرنامج الطرفية أو Terminal في ماك ولينوكس. توفر لغات البرمجة الحديثة أيضًا برامج تفاعلية لكتابة تعليماتنا عبر لغة الأوامر، حيث تقوم هذه البرامج بتنفيذ وترجمة الأوامر سطرًا بسطر.

أين يمكن إيجاد برنامج موجه الأوامر أو الطرفية في أنظمة التشغيل:

يمكن إيجاد موجه الأوامر في نظام ويندوز بالبحث عن كلمة cmd، كالتالي:

البحث عن برنامج موجه الأوامر في ويندوز 10
شكل برنامج موجه الأوامر CMD في نظام ويندوز 10

أما في نظامي ماك ولينوكس، فيمكن إيجاده بالبحث عن كلمة Terminal، كالتالي:

البحث عن برنامج موجه الأوامر Terminal في لينوكس.
شكل برنامج موجه الأوامر Terminal في نظام لينوكس.
البحث عن برنامج موجه الأوامر في نظام ماك. المصدر: mac.install.guide

كما نرى في الصور أعلاه، أن برنامج موجه الأوامر عبارة شاشة سوداء (أو أحيانًا بيضاء). وسنلاحظ أيضًا أن هناك مؤشر ويسمى Command Prompt، ليدل على أن البرنامج جاهز لتلقي الأوامر كتابة. يكون شكل هذه المؤشر هكذا: (<) في نظام التشغيل Windows، بينما شكله في نظامي التشغيل Linux و Mac OS، يكون هكذا: ($). لتنفيذ أمر ما، يمكننا كتابته بعد علامة المؤشر ثم الضغط على Enter في لوحة المفاتيح.

مسار المجلدات في موجه الأوامر:

قلنا في الفقرة أعلاه، سكنتب تعليماتنا بعد هذا المؤشر (<). ولكن كما نرى في صورة شاشة الـ CMD، أن هناك عبارات ورموز على يسار المؤشر، كالتالي:

C:\Users\ExVar>

كلمة ExVar هي اسم المجلد الذي نوجد به حاليًا وهو موجود داخل مجلد آخر اسمه Users، والذي بدوره موجود داخل مجلد القرص الرئيسي والذي يسمى C في نظام ويندوز. إذًا، السطر أعلاه يدل على مسار المجلد الذي نوجد به حاليًا.

فمثلًا إذا نفذنا أمر إنشاء ملف جديد، فسيتم إنشاء هذا الملف داخل هذا المجلد ExVar. أو كتبنا أمر تحميل ملف من الإنترنت مثلًا، فسيتم حفظ الملف المحمل، في مجلد ExVar.

وفي نفس الوقت، هذا المجلد ExVar، هو المجلد الخاص بالمستخدم الذي يستخدم النظام. وهو موجود داخل مجلد المستخدمين والذي يحمل اسم Users. لذا، من الطبيعي عند فتح برنامج موجه الأوامر، أن يفتح البرنامج في مسار المستخدم الحالي.

بعض الأوامر الشائعة لموجه الأوامر:

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

أمر whoami:

ولفهم أكثر للفقرة السابقة، دعونا نستخدم أمر whoami، والذي يعني باللغة العربية، “من أنا”. يستخدم هذا الأمر لمعرفة المستخدم الذي يستخدم النظام حاليًا. نكتب الأمر بعد علامة < ثم نضغط Enter، على النحو التالي:

أمر Whoami في برنامج موجه الأوامر

سينفذ البرنامج الأمر، ويظهر النتيجة في السطر التالي: desktop-8hj9cpp\exvar. وهو اسم المستخدم الذي سجل دخوله في النظام.

أمر dir:

لمعرفة المجلدات والملفات التي توجد داخل المجلد الحالي، سنستخدم الأمر dir في ويندوز، والأمر ls في نظامي ماك ولينوكس.

استخدام الأمر dir في موجه الأوامر في نظام ويندوز سيظهر جميع الملفات والمجلدات داخل المسار الذي نوجد به.

أمر mkdir:

نستخدم هذا الأمر، إذا أردنا إنشاء مجلد جديد داخل المجلد الحالي. وهو في حالتنا هذه مجلد المستخدم exvar. ولكن هذا الأمر لن يعمل لوحده. فإذا جربنا تنفيذ الأمر لوحده، فسينتج الخطأ التالي:

تنفيذ الأمر mkdir بدون معامل الاسم في موجه الأوامر

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

سنصلح الخطأ السابق بإضافة الاسم كالتالي:

أمر mkdir بعد إضافة معامل الاسم

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

عرض المجلد الذي أنشأناه عبر أمر عرض الملفات والمجلدات dir

كما نرى في الصورة السابقة، أن المجلد الجديد programming تم إنشاؤه بالفعل داخل مجلد ExVar. ولمزيد من التأكد يمكننا استخدام الواجهة الرسومية، بفتح عارض المجلدات في الويندوز، والذهاب إلى مسار المجلد ExVar، كالتالي:

الواجهة الرسومية لعارض المجلدات في الويندوز

أمر cd:

الآن بعد انشاء المجلد programming، نريد أن ننتقل إليه في موجه الأوامر. يمكننا فعل ذلك عبر استخدام الأمر cd، كالتالي:

استخدام الأمر cd للانتقال لمجلد آخر

وهكذا، أصبحنا داخل مجلدنا الجديد programming، ويمكننا إنشاء ملفات أو مجلدات داخله، أو عرض ملفاته… الخ.

أمر help:

ولكن ماذا إذا أردنا العودة إلى مجلدنا السابق ExVar؟ استخدام cd وحده لن يعيدنا إلى المجلد الأب. يمكننا بكل بساطة، استخدام الأمر  help ووضع أمر cd كمعامل له، لننظر ما هي المعاملات التي يوفرها أمر cd، كالتالي:

دمج أمر help وأمر cd

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

استخدام المعامل .. مع الأمر cd

أمر exit:

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

أمر exit لإغلاق موجه الأوامر

كما نرى، أن هناك كلمات معينة نكتبها في موجه الأوامر وهو يقوم بترجمتها وتنفيذها. هناك الكثير جدًا من الأوامر التي يمكننا أن ننفذها عبر موجه الأوامر.

في هذا الموقع يمكننا إيجاد أوامر الويندوز وماك ولينوكس. وبالطبع ليس علينا حفظ كل هذه الأوامر عن ظهر قلب، ولكن مع الممارسة سيعلق الكثير منها في الذهن. خاصة أن بعضها اسمه يدل عليه، مثل whoami، وcd والذي هو عبارة عن اختصار لكلمتي change directory وتعني بالعربية “غيّر المسار أو المجلد”.

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

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

هل أعجبك المحتوى وتريد المزيد منه يصل إلى صندوق بريدك الإلكتروني بشكلٍ دوري؟
انضم إلى قائمة من يقدّرون محتوى إكسڤار واشترك بنشرتنا البريدية.