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

استمع إلى المقال
|
أثناء العمل على الحاسب، نحتاج إلى إخبار نظام التشغيل (Operating System) الذي يدير جهاز الحاسب، بالمهمة التي نود منه أن يقوم بها نيابة عنا. فتح برنامج المتصفح، أو برنامج الطقس… الخ.
لفعل ذلك، نحن دائمًا ما نتبع إحدى الطريقتين: كتابة الأوامر حرفيًا بلوحة المفاتيح عبر واجهة سطر الأوامر Command-Line interface (CLI)، أو بطريقة مرئية باستخدام الفأرة عبر الضغط على أزرار الواجهة الرسومية Graphical user interface (GUI) التي يوفرها نظام التشغيل.
توفر واجهة المستخدم الرسومية (GUI)، العديد من الأيقونات والقوائم. نقوم بإعطاء أوامر لنظام التشغيل من خلال النقر فوق هذه الأيقونات أو عناصر القائمة. أما في حالة واجهة سطر الأوامر، فسنوجه نفس التعليمات عبر كتابة الأوامر النصية.
في الماضي، كانت واجهات سطر الأوامر هي الوسيلة الوحيدة للتفاعل مع الحاسب. لكن لماذا نستخدمها الآن، بعد أن أصبح لدينا واجهات رسومية بسيطة وسهلة الاستخدام، توفرها أنظمة التشغيل والبرامج؟
لأن واجهات سطر الأوامر تكون أكثر مرونة، ولديها خيارات أكثر مقارنة بالواجهات الرسومية. كمثال، يمكننا دمج عدة أوامر بكتابتها في سطر واحد لإنشاء أمر جديد، بينما لا يمكننا دمج عدة أيقونات مثلاً، عند استخدام الواجهة الرسومية. لأن الأيقونة في الواجهة تم تصميمها لفعل أمر واحد عند الضغط عليها. كما أن بعض البرامج يوفرها مطوروها بموجه لسطر الأوامر فقط، لذا يجب على من يستخدم هذه البرامج، معرفة أساسيات سطر الأوامر للتعامل معها.
يتم كتابة شيفرات البرامج التي يمكن تنفيذها عبر سطر الأوامر، بلغة الأوامر Command Language. يطلق عليها برامج shell scripts على أنظمة يونيكس UNIX والأنظمة الشبيهة بيونيكس مثل، غنو/لينوكس GNU / Linux ونظام ماك mac OS، وملفات batch على نظام Windows.
لغة الأوامر هذه، يمكننا كتابتها على برامج تترجمها إلى لغة الآلة. من ضمن هذه البرامج، لدينا CMD في الويندوز، وبرنامج الطرفية أو Terminal في ماك ولينوكس. توفر لغات البرمجة الحديثة أيضًا برامج تفاعلية لكتابة تعليماتنا عبر لغة الأوامر، حيث تقوم هذه البرامج بتنفيذ وترجمة الأوامر سطرًا بسطر.
يمكن إيجاد موجه الأوامر في نظام ويندوز بالبحث عن كلمة cmd، كالتالي:
أما في نظامي ماك ولينوكس، فيمكن إيجاده بالبحث عن كلمة Terminal، كالتالي:
كما نرى في الصور أعلاه، أن برنامج موجه الأوامر عبارة شاشة سوداء (أو أحيانًا بيضاء). وسنلاحظ أيضًا أن هناك مؤشر ويسمى Command Prompt، ليدل على أن البرنامج جاهز لتلقي الأوامر كتابة. يكون شكل هذه المؤشر هكذا: (<) في نظام التشغيل Windows، بينما شكله في نظامي التشغيل Linux و Mac OS، يكون هكذا: ($). لتنفيذ أمر ما، يمكننا كتابته بعد علامة المؤشر ثم الضغط على Enter في لوحة المفاتيح.
قلنا في الفقرة أعلاه، سكنتب تعليماتنا بعد هذا المؤشر (<). ولكن كما نرى في صورة شاشة الـ CMD، أن هناك عبارات ورموز على يسار المؤشر، كالتالي:
C:\Users\ExVar>
كلمة ExVar هي اسم المجلد الذي نوجد به حاليًا وهو موجود داخل مجلد آخر اسمه Users، والذي بدوره موجود داخل مجلد القرص الرئيسي والذي يسمى C في نظام ويندوز. إذًا، السطر أعلاه يدل على مسار المجلد الذي نوجد به حاليًا.
فمثلًا إذا نفذنا أمر إنشاء ملف جديد، فسيتم إنشاء هذا الملف داخل هذا المجلد ExVar. أو كتبنا أمر تحميل ملف من الإنترنت مثلًا، فسيتم حفظ الملف المحمل، في مجلد ExVar.
وفي نفس الوقت، هذا المجلد ExVar، هو المجلد الخاص بالمستخدم الذي يستخدم النظام. وهو موجود داخل مجلد المستخدمين والذي يحمل اسم Users. لذا، من الطبيعي عند فتح برنامج موجه الأوامر، أن يفتح البرنامج في مسار المستخدم الحالي.
سنستعرض هنا بعض الأوامر حتى نفهم كيف يمكننا كتابة الأوامر في برنامج CMD في نظام الويندوز. نفس هذه الأوامر وغيرها يمكن استخدامها في نظامي لينوكس وماك بنفس طريقة الويندوز.
ولفهم أكثر للفقرة السابقة، دعونا نستخدم أمر whoami، والذي يعني باللغة العربية، “من أنا”. يستخدم هذا الأمر لمعرفة المستخدم الذي يستخدم النظام حاليًا. نكتب الأمر بعد علامة < ثم نضغط Enter، على النحو التالي:
سينفذ البرنامج الأمر، ويظهر النتيجة في السطر التالي: desktop-8hj9cpp\exvar. وهو اسم المستخدم الذي سجل دخوله في النظام.
لمعرفة المجلدات والملفات التي توجد داخل المجلد الحالي، سنستخدم الأمر dir في ويندوز، والأمر ls في نظامي ماك ولينوكس.
نستخدم هذا الأمر، إذا أردنا إنشاء مجلد جديد داخل المجلد الحالي. وهو في حالتنا هذه مجلد المستخدم exvar. ولكن هذا الأمر لن يعمل لوحده. فإذا جربنا تنفيذ الأمر لوحده، فسينتج الخطأ التالي:
يقول لنا موجه الأوامر CMD بكل بساطة أن صيغة الأمر Syntax خطأ. من هنا نعرف أنه بعض الأوامر تحتاج إلى معاملات parameters إضافية ليتم تنفيذها. وهو هنا شيء منطقي، لأن إنشاء مجلد يتطلب وجود اسم له. إذا المعامل سيكون، اسم المجلد الجديد.
سنصلح الخطأ السابق بإضافة الاسم كالتالي:
هنا اخترنا الاسم programming لمجلدنا الجديد. ولكن هل تم بالفعل إنشاء المجلد. يمكننا التأكد بطريقتين، الأولى باستخدام الأمر dir، والثاني عبر الواجهة الرسومية:
كما نرى في الصورة السابقة، أن المجلد الجديد programming تم إنشاؤه بالفعل داخل مجلد ExVar. ولمزيد من التأكد يمكننا استخدام الواجهة الرسومية، بفتح عارض المجلدات في الويندوز، والذهاب إلى مسار المجلد ExVar، كالتالي:
الآن بعد انشاء المجلد programming، نريد أن ننتقل إليه في موجه الأوامر. يمكننا فعل ذلك عبر استخدام الأمر cd، كالتالي:
وهكذا، أصبحنا داخل مجلدنا الجديد programming، ويمكننا إنشاء ملفات أو مجلدات داخله، أو عرض ملفاته… الخ.
ولكن ماذا إذا أردنا العودة إلى مجلدنا السابق ExVar؟ استخدام cd وحده لن يعيدنا إلى المجلد الأب. يمكننا بكل بساطة، استخدام الأمر help ووضع أمر cd كمعامل له، لننظر ما هي المعاملات التي يوفرها أمر cd، كالتالي:
سنجد أن cd يقبل عدة معاملات، من ضمنها معامل النقطتين ( .. ). وهناك شرح مرفق، يخبرنا بما سيقوم به المعامل حينما استخدامه مع cd. سينقلنا الى المجلد الأب للمجلد الذي نعمل عليه حاليًا. إذا، فلنجرب:
حينما ننتهي من العمل على برنامج موجه الأوامر، يمكننا إخبار نظام التشغيل بإغلاق البرنامج بالضغط على علامة X أو كتابة أمر الإغلاق exit. وفي الحالتين سيغلق نظام التشغيل البرنامج.
كما نرى، أن هناك كلمات معينة نكتبها في موجه الأوامر وهو يقوم بترجمتها وتنفيذها. هناك الكثير جدًا من الأوامر التي يمكننا أن ننفذها عبر موجه الأوامر.
في هذا الموقع يمكننا إيجاد أوامر الويندوز وماك ولينوكس. وبالطبع ليس علينا حفظ كل هذه الأوامر عن ظهر قلب، ولكن مع الممارسة سيعلق الكثير منها في الذهن. خاصة أن بعضها اسمه يدل عليه، مثل whoami، وcd والذي هو عبارة عن اختصار لكلمتي change directory وتعني بالعربية “غيّر المسار أو المجلد”.
من المهم أن نعرف، أن واجهات المستخدم الرسومية البسيطة، لم تجعل من موجه الأوامر قديمًا وغير قابل للاستخدام. لا يزال موجه الأوامر، إحدى أسرع الطرق لإنجاز الأعمال المتعلقة بالحاسب. خاصة لمن أراد أن يصبح مبرمجًا، هنا يصبح من المهم – إن لم يكن إجباريًا – أن تكون لديه معرفة جيدة بموجه الأوامر وكيفية استخدامه.
هذا الدرس هو جزء من سلسلة تعليم مبادئ البرمجة بلغة كوتلن. لمُتابعة الدروس منذ البداية ومُشاهدة فهرس المحتويات يمكنك الانتقال إلى الدرس الأول من هنا.
هل أعجبك المحتوى وتريد المزيد منه يصل إلى صندوق بريدك الإلكتروني بشكلٍ دوري؟
انضم إلى قائمة من يقدّرون محتوى إكسڤار واشترك بنشرتنا البريدية.