كيفية كتابة البرامج النصية Bash لأتمتة Linux

تعد البرمجة النصية Bash مهارة مفيدة للتعلم كمستخدم Linux. حتى كمبتدئ ، فإن معرفة هذه المهارة يمكن أن يكون هو الفرق بين الاستفادة الكاملة من جهازك ، والقيام بكل شيء يدويًا. لهذا السبب في هذه المقالة ، سنعلمك كيفية كتابة البرامج النصية bash لأتمتة Linux ، والتحكم الكامل في سطح المكتب الخاص بك. سنتناول أساسيات البرمجة النصية باستخدام Bash shell ، وأساسيات ما يصنع البرنامج النصي ، وكيفية تشغيله على نظامك ، وما تعنيه كلمة shebangs ، والمزيد!
أنواع النصوص
هناك أنواع مختلفة من البرامج النصية. بشكل أساسي: SH و BASH. تعد امتدادات الملفات هذه مهمة ، لأن امتداد الملف يخبر المترجم كيفية تشغيله. إذا كان الملف عبارة عن ملف SH ، فيمكن تشغيله في أي قشرة ، وليس فقط Bash. هذا يعني أن البرنامج النصي المكتوب لـ Bash على Linux يمكن تشغيله على Mac و BSD وأماكن أخرى ذات أصداف مماثلة.
البرامج النصية التي تستخدم امتداد الملف BASH مخصصة فقط للتشغيل داخل Bash. يكفي القول ، لن يتم تشغيل البرنامج النصي الذي يحتوي على امتداد ملف bash في Fish shell على نظام Linux ، أو أي من القذائف الأخرى المشابهة المتاحة.
شيبانج
بعض البرامج النصية لا تستخدم امتدادات الملفات على الإطلاق. بدلاً من ذلك ، يستخدمون كلمة shebang للسماح للمترجم بفهم الغرض من النص وكيفية تشغيله. عند كتابة السيناريو ، تأتي كلمة shebang دائمًا في المقام الأول. إذا كان shebang غائبًا ، فغالبًا ما يرفض البرنامج النصي التشغيل ، خاصةً إذا لم يتم استخدام امتداد الملف.
هناك الكثير لنتعلمه عن shebangs ، لكن لا داعي للمبتدئين في القلق بشأنهم. لقد أثبتت أنها مفيدة فقط لمستخدمي Bash المتقدمين ، الذين يتطلعون إلى كتابة أدوات Bash معقدة بشكل لا يصدق. كمبتدئين ، الشيء الوحيد الذي يحتاج المستخدمون إلى التفكير فيه هو المعيار: #! / bin / bash
صنع سيناريو باش
يخلط العديد من المبتدئين بين نصوص bash للبرمجة الفعلية. الغرض الرئيسي من البرمجة النصية في bash هو تجميع العديد من الأوامر معًا ، والقيام بأشياء طويلة ومعقدة بشكل فعال دون الحاجة إلى كتابة كل شيء صغير في الصدفة الطرفية. إذا كنت تحاول القيام ببرمجة جادة في Bash ، فتوقف وفكر في لغة برمجة فعلية مستخدمة على Linux مثل Python.
للبدء ، افتح Terminal وأدخل الأمر التالي:
nano myfirstbashscript
هذا يعرض محرر نصوص Nano. داخل nano ، أضف shebang لمساعدة المترجم على تحديد ما يجب فعله بالسيناريو.
#!/bin/bash
من هنا يمكننا فعل أي شيء! على سبيل المثال: يمكن لمستخدم Ubuntu عمل برنامج نصي للتحديث بسيط عن طريق إضافة الأسطر:
sudo apt update;sudo apt upgrade -y
بدلاً من ذلك ، مثال آخر: قم بعمل برنامج ping النصي المستمر ليتم تشغيله في الخلفية ، إذا كنت قلقًا بشأن سرعة الشبكة لديك.
ping google.com
أضف أي أمر (أوامر) تريده إلى البرنامج النصي! الحصول على الإبداع!
بعد إضافة ما تريده إلى البرنامج النصي الخاص بك ، احفظه باستخدام nano باستخدام CTRL + O.
مع إنشاء النص ، حان الوقت لتحديث الأذونات. في محطة ، قم بما يلي:
sudo chmod +x myfirstbashscript
تشغيل البرامج النصية
لتشغيل برنامج نصي shell ، افتح Terminal وقم بما يلي:
sudo sh script.sh
لتشغيل ملفات bash ، جرب:
sudo bash script.bash
بدلاً من ذلك ، يمكن تشغيل أي نص برمجي بغض النظر عن امتداد الملف بسهولة مع ./filename في الجهاز.
تعمل جميع الطرق الثلاث لتشغيل البرامج النصية بشكل جيد جدًا. ومع ذلك ، فإن استخدام ./filename هو أسوأ طريقة ، حيث لا تعمل البرامج النصية غالبًا ما لم يكن لدى سكربت bash الأذونات الصحيحة. اضبط الأذونات باستخدام:
sudo chmod +x script
جعل البرنامج النصي الخاص بك ثنائي
لتشغيل البرنامج النصي عن طريق كتابة اسم الملف في الجهاز ، ستحتاج إلى جعله ملفًا ثنائيًا. للقيام بذلك ، استخدم الأمر chmod لجعله قابلاً للتنفيذ.
sudo chmod +x
عندما يتم وضع علامة على البرنامج النصي كملف تنفيذي ، فقد حان الوقت لنقل البرنامج النصي بحيث يمكن الوصول إليه في مسار المستخدم. افعل ذلك باستخدام أمر MV. بدلاً من ذلك ، استخدم الأمر CP بدلاً من الأمر move إذا كنت تريد الاحتفاظ بنسخة احتياطية من البرنامج النصي الخاص بك في موقعه الأصلي.
sudo mv /location/of/script /usr/bin/
أو
sudo cp /location/of/script /usr/bin/
بعد ذلك ، قم بتشغيل البرنامج النصي الذي تم نقله حديثًا داخل الجهاز ، من أي مكان ببساطة عن طريق كتابة اسمه في الجهاز. على سبيل المثال: لقد استخدمت YouTube-DL لكتابة برنامج نصي لنسخ YouTube تلقائيًا ، ووضعته في / usr / bin / لسهولة الوصول إليه.
لتشغيل البرنامج النصي المذكور ، عليك القيام بما يلي:
youtubescript
هذا هو!
استنتاج
تعلم لغة bash هو أداة مفيدة. بدونها ، سيجد مديرو النظام والمهوسون الطرفيون أنفسهم خاضعين للجهاز لساعات في المرة الواحدة. بدلاً من ذلك ، يمكنهم كتابة نصوص bash لأتمتة Linux. من خلال تعلم الاستفادة من قوة Bash ، يمكنك كتابة كل هذه العمليات المعقدة وتشغيلها بسرعة باستخدام برنامج نصي.
الصدفة جميلة ، وكلما تعلمت المزيد عنها ، ستتعرف أكثر على أنظمة Linux الخاصة بها ، وكيفية أتمتةها ، وحتى تحسين كيفية عمل الأشياء داخليًا! لا حدود للسماء مع باش ، كل ما يتطلبه الأمر هو القليل من الإبداع!