الصنّاع العرب

التعرف على نظام راسبيان – سطر الأوامر (Command Line)

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

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

سطر الأوامر هو جزء من بيئة الراسبيان، ويمكن استدعاؤه وفتح نافذه للكتابة فيه عن طريق فتح قائمة Menu واختيار قائمة البرمجيات الإضافية Accessories ثم اختيار Terminal. عند فعل هذا ستفتح لك شاشة يمكن أن تكتب فيها الأوامر التي يتعرف عليها نظام التشغيل. يمكن طبعاً أن تبدأ أصلاً نظام التشغيل في وضعية سطر الأوامر من البداية كما سبق ووضحنا في الدروس السابقة. كما تلاحظ في الصورة رقم 1، فتلك الشاشة تشبه إلى حد كبير شاشة DOS الشهيرة في أنظمة الويندوز.

صورة رقم 1: شكل سطر الأوامر في الراسبيان [1]

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

التعامل مع سطر الأوامر يفتح لك خيارات عديدة يمكن أن تنفذها مع منظومتك الحاسوبية، وعلى عكس ما يتصور الكثير من الناس، فإن الواجهة المرئية أحياناً لا تعطيك كل الخيارات المتاحة الموجودة بالفعل. على سبيل المثال، كثير من الصناع و محبي الإلكترونيات تعاملوا مع الأردوينو ستوديو لبرمجة منصات الأردوينو الخاصة بهم، ولكن عدد أقل من الناس يعرف أن الأردوينو ستوديو ماهو إلا واجهة مرئية تخفي ورائها برنامج يسمى “إيه في آر دود” (AVRdude) ، وهو المبرمج الذي يقوم فعليا بتنزيل الكود إلى المتحكمات الكامنة داخل منصات الأردوينو. المفاجأة هنا هي أن برنامج “إيه في آر ديود” يعمل أصلاً فقط بنظام الأوامر في نافذة سطر الأوامر، ويحتوي على العديد من الإمكانيات والأوامر التي لا تستخدم الواجهة المرئية الخاصة بالأردوينو ستوديو إلا النذر اليسير منها، وبناءاً عليه فلن تتمكن من استخدام البرنامج المختفي وراء الواجهة المرئية إلا إذا نزلت لمستوى سطر الأوامر. هذا مثال متكرر يحدث في العديد من الحالات، تجد أن النظام المرئي فيها لا يعطيك كل قوة النظام المعتمد على سطر الأوامر.

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

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

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

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

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

وبعد أن عرفنا أهمية سطر الأوامر، سنستعرض بعض الأوامر الهامة في نظام راسبيان (لاحظ أن كل الأوامر من أحرف صغيرة small letters)، و التي هي في الواقع تقريباً نفس أوامر سطر الأوامر [1] في أنظمة يونكس/لينوكس:

1- أمر poweroff

يغلق الراسبري باي فوراً.

2- أمر raspi-config

يفتح نافذة الترتيبات الخاصة بالراسبري باي.

3- أمر shutdown – h now

يغلق الراسبري باي فوراً.

4- أمر shutdown – h 01:25

يغلق الراسبري باي عندما تأتي الساعة 1:25 صباحاً، طبعاً يمكنك وضع أي وقت من اختيارك.

5- أمر reboot

يغلق الراسبري باي ثم يعيد تشغيلها

6- أمر date

يعرض لك التاريخ

7- أمر cat

يمكنك من فتح ملفات نصية وعرض محتواها داخل نافذة سطر الأوامر (Example: cat TextFile.txt)

8- أمر cd

يغير من دليل حافظة الملفات الحالي إلى دليل آخر (Example: cd /abc/xyz)

المثال السابق يغير دليل حافظة الملفات من الدليل الحالي (Current Directory) إلي الدليل abc/xyz/

9- أمر ls

يعرض محتويات الدليل الحالي (أسماء الملفات الموجودة به)

10- أمر ls -l

هو نفس الأمر السابق و لكن يعرض تفاصيل أكثر عن تلك الملفات مثل الإذن المرتبط بكل ملف (Permissions) ،حجم الملف إلخ

يمكنك تجربة هذه الأوامر بنفسك على سطر الأوامر و مراقبة النتيجة بنفسك، فليس من رأى كمن سمع!

في الدرس القادم إن شاء الله نكمل بقية الأوامر المهمة لسطر الأوامر.

المراجع:

[1] http://www.circuitbasics.com/useful-raspberry-pi-commands

[2] (الصورة البارزة):

http://www.independentwx.com/guides/how-to-make-static-raspberry-pi-ip

mfalcon

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

2 تعليقان

اترك رد

  • السلام عليكم ورحمة الله .. مقال رائع استفدت منه كثيرا.. عندي سؤال يخص مبدأ ادخال البيانات عن طريق الكيبورد كيف سيكون شكل هذا الأمر؟ علمًا ان المخرجات ستكون من النوع string

    • و عليكم السلام ورحمة الله و بركاته يا أخت هند.
      يمكن إدخال الأوامر وكتابتها عن طريق لوحة المفاتيح، و هذا يتم عن طريق توصيل لوحة مفاتيح (keyboard) ذات طرف USB بالراسبري باي.
      الحل الآخر هو توصيل شاشة تعمل باللمس ، و يمكن عندها إظهار لوحت مفاتيح على الشاشة نفسها و تقومين بالكتابة عن طريق لمس الشاشة. أظن أنه يمكن عمل نفس الشئ مع الشاشات التي لا تعمل باللمس ولكن ستختارين الحرف المطلوب كتابته عن طريق الفأرة (mouse).

تابعنا