يبدو Bash كاسم غريب لواجهة سطر الأوامر التي ترحب بالمستخدمين الذين يقومون بتسجيل الدخول إلى أي توزيعة Linux. ما هو بالضبط باش؟ ما يمكنك استخدامه ل؟ دعنا نكتشف ذلك.
بينما يرتبط Bash عادةً بنظام التشغيل Linux، يمكنك استخدامه على ويندوز أيضًا. يتضمن نظام macOS بالفعل Bash، على الرغم من أنه قام بتغيير الغلاف الافتراضي إلى Zsh – وهو إصدار متقدم من Bash مع بعض الميزات الإضافية.
ما هي الصدفة؟
يتم طرح مصطلح Bash Shell كثيرًا، ولكن ما هي الصدفة على أي حال؟ لماذا هو مطلوب؟ ولماذا يبدو باش هو الصدفة الوحيدة الموجودة هناك؟
لقد جعلت أنظمة التشغيل الحديثة مع واجهات المستخدم الرسومية سهلة الاستخدام استخدام الكمبيوتر أمرًا سهلاً. ولكن في الأيام الأولى لأجهزة الكمبيوتر، لم يكن إخبار النظام بما يجب فعله بهذه البساطة.
كان على المبرمجين معرفة التفاصيل ذات المستوى المنخفض للنظام الذي يقومون بترميزه، وتوجيه كل قطعة من الأجهزة يدويًا. تم تصميم أنظمة التشغيل لسد هذه الفجوة، ولكن كيف يمكنك توجيه نظام التشغيل نفسه؟
أدخل الصدفة. تم تصميم الطبقة الخارجية لنظام التشغيل لتكون بيئة تفاعلية تعرض جميع وظائف الكمبيوتر في واجهة بسيطة. كانت هذه الصدفة هي أبعد ما يتعين على مستخدم الكمبيوتر التعمق فيه، حيث أنها تحتوي على جميع الأوامر المطلوبة لتشغيل النظام.
بورن مرة أخرى: كيف أصبح باش
من المفاهيم الخاطئة الشائعة أن Bash تم إنشاؤه بواسطة Linus Torvalds لنظام التشغيل Linux. في الواقع، تم نقل Bash فقط إلى Linux، وهو مستخدم بالفعل في سابقه Unix.
من نواحٍ عديدة، يعتبر Unix هو المكان الذي بدأ فيه كل شيء بالنسبة لأنظمة التشغيل الحديثة. لقد تخلص من الكثير من التعقيدات المعقدة التي ابتليت بها تطبيقات نظام التشغيل المبكرة، وقدم وظائف الكمبيوتر في واجهة نصية بسيطة نسبيًا.
بالطبع، استعار يونكس نفسه معظم أفكاره من Multics، بما في ذلك مفهوم الصدفة. ولكن نظام Unix هو الذي شاع هذه التقنية فعليًا، مع طرح Thompson Shell بنسخته الأولى.
كانت وظائفها محدودة جدًا، ومع ذلك، انتهى الأمر بالعديد من المبرمجين إلى تعديل الصدفة لجعلها أكثر ملاءمة للبرمجة النصية. كان Bourne Shell هو البديل الرسمي لقذيفة Unix، مضيفًا دعمًا لنصوص shell..ص>
تم إصدار Bourne Again Shell في وقت لاحق بكثير، مما أدى إلى تحسين إضافي في قدرات البرمجة النصية الخاصة به وتحويله إلى غلاف ترخيص GNU مجاني ومفتوح المصدر يمكن استخدامه بواسطة أي نظام تشغيل. وسرعان ما تم تبنيه من قبل Linux، ليصبح الغلاف الافتراضي لتوزيعاته المختلفة.
ولكن ماذا يستطيع باش أن يفعل؟
إن Bash هي في الأساس بيئة برمجة نصية متكاملة مع إمكانية الوصول الكامل إلى نظام Linux. بدءًا من إدارة الملفات وحتى تشغيل التطبيقات، يمكنك تنفيذ كل مهمة حوسبة باستخدام أوامر Bash.
بالنسبة لمعظم مستخدمي Linux، يُترجم هذا فقط إلى أوامر shell اليدوية. بعد كل شيء، فإن الغرض الرئيسي من Bash هو العمل كواجهة لنظام التشغيل.
وهناك عدد لا بأس به من هذه الأوامر المضمنة. يمكنك إدارة ملكية الملفات باستخدام chown ، وتهيئة إعدادات الشبكة باستخدام ifconfig ، وتحديد موقع الأدلة باستخدام يجد - والقائمة تطول.
لكن Bash لم يكن ليوجد لو كانت أوامر Linux هي كل ما يهتم به المستخدمون. لا، القوة الحقيقية لقشرة Linux تكمن في البرمجة النصية.
أهمية البرمجة النصية
فكرة أوامر البرمجة النصية بسيطة. بدلاً من إدخال كافة الأوامر التي تريد من النظام أن ينفذها واحداً تلو الآخر يدوياً، يمكنك حفظ الأوامر في ملف نصي يمكن تشغيله عند الطلب.
يؤدي ذلك إلى تحويل واجهة الصدفة إلى لغة برمجة من نوع ما، مما يسمح للمستخدمين بأتمتة أي إجراء وتحويله إلى برنامج نصي قابل لإعادة الاستخدام. ومن الواضح أن الأمر يذهب إلى أبعد من ذلك، حيث أن أي لغة برمجة تحتاج إلى أشياء مثل المتغيرات والوظائف بالإضافة إلى القدرة على حفظ التعليمات البرمجية.
ويتمتع Bash بكل هذه الميزات. وهذا هو السبب في أن الصدفة - وإلى حد ما Linux بشكل عام - تحظى بشعبية كبيرة في إدارة الخوادم والأنظمة التجارية.
قد يتمكن المستخدم المنزلي من النقر فوق مجموعة من الأزرار، ولكن يجب أن يكون مسؤول النظام قادرًا على تنفيذ أي إجراء على عدد كبير من أجهزة الكمبيوتر عن بُعد. نصوص Bash هي التي تجعل هذا النوع من إدارة النظام الآلي ممكنًا.
على سبيل المثال، فكر في دليلنا لإعادة تسمية الملفات والمجلدات على نظام Linux. يوضح الدليل كلتا الطريقتين – واجهة المستخدم الرسومية والبرنامج النصي. كما ترى، تكون طريقة البرمجة النصية أكثر قابلية للتوسع عندما يكون هناك عدد كبير من الملفات المعنية.
البدء مع باش.
الشيء الجيد في Bash هو أنه لا يقتصر على Linux وحده. يمكنك الآن تثبيت لينكس على ويندوز من خلال نظام Windows الفرعي لنظام التشغيل Linux (WSL)، والذي يأتي مع Bash افتراضيًا.
وهذا يعني أنه يمكنك البدء في تجربة Bash دون الحاجة إلى التبديل بالكامل إلى Linux. حتى لو كنت مستخدمًا عاديًا لا ينوي العمل مع خوادم Linux، فإن الإمكانيات المثيرة للاهتمام لـ Bash Shell يمكن أن تكون مفيدة لك.
لا يعني ذلك أن Bash هو خيارك الوحيد لأتمتة مهام الحوسبة. بوويرشيل هي واجهة مشابهة تعمل مع Windows - بصرف النظر عما يمكنك إدارته باستخدام موجه الأوامر بالطبع.