كيفية إنشاء برامج Bash Shell وتشغيلها على نظام التشغيل Windows 10

مع وصول Bash shell الخاص بـ Windows 10 ، يمكنك الآن إنشاء برامج نصية Bash shell وتشغيلها على Windows 10. يمكنك أيضًا دمج أوامر Bash في ملف دفعي Windows أو برنامج PowerShell النصي.

حتى لو كنت تعرف ما تفعله ، فهذا ليس بالضرورة بسيطًا كما يبدو. يستخدم Windows و UNIX أحرفًا مختلفة في نهاية السطر ، ويمكن الوصول إلى نظام ملفات Windows في موقع مختلف في بيئة Bash.

كيفية كتابة Bash Script على نظام التشغيل Windows 10

ذات صلة: كيفية تثبيت واستخدام Linux Bash Shell على نظام التشغيل Windows 10

عند كتابة نصوص برمجية على نظام التشغيل Windows ، ضع في اعتبارك أن أنظمة Windows والأنظمة الشبيهة بـ UNIX مثل Linux تستخدم أحرفًا مختلفة في "نهاية السطر" في ملفات نصية في برامج نصية shell.

بمعنى آخر ، هذا يعني أنه لا يمكنك ببساطة كتابة نص برمجي في برنامج Notepad. احفظ الملف في Notepad ولن يتم تفسيره بشكل صحيح بواسطة Bash. ومع ذلك ، يمكنك استخدام برامج تحرير النصوص الأكثر تقدمًا - على سبيل المثال ، يتيح لك برنامج Notepad ++ إعطاء أحرف نهاية سطر UNIX لملف بالنقر فوق تحرير> تحويل EOL> تنسيق UNIX / OSX.

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

على سبيل المثال ، لإنشاء نص برمجي bash في nano ، يمكنك تشغيل الأمر التالي في bash:

nano ~ / myscript.sh

سيؤدي هذا إلى فتح محرر نصوص Nano الذي يشير إلى ملف يسمى "myscript.sh" في الدليل الرئيسي لحساب المستخدم الخاص بك. (يمثل الحرف "~" دليلك الرئيسي ، لذا فإن المسار الكامل هو /home/username/myscript.sh.)

ابدأ برنامج شل النصي بالسطر:

#! / بن / باش

ذات صلة: دليل المبتدئين إلى البرمجة النصية للقذيفة: الأساسيات

أدخل الأوامر التي تريد تشغيلها ، كل واحد في سطر خاص به. سيقوم البرنامج النصي بتشغيل كل أمر على حدة. أضف حرف "#" قبل السطر لمعاملته على أنه "تعليق" ، وهو أمر يساعدك أنت والآخرين على فهم النص ولكنه لا يعمل كأمر. لمزيد من الحيل المتقدمة ، راجع دليل أكثر تفصيلاً لنصوص Bash على نظام Linux. ستعمل نفس الأساليب في Bash على Ubuntu على Windows.

لاحظ أنه لا توجد طريقة لتشغيل برامج Windows من داخل بيئة Bash. أنت مقيد بأوامر Linux الطرفية والأدوات المساعدة ، تمامًا كما لو كنت تستخدم نظام Linux نموذجي.

على سبيل المثال ، دعنا نستخدم النص الأساسي "hello world" كمثال هنا:

#! / bin / bash # اضبط المتغير STRING STRING = "Hello World!" # طباعة محتويات المتغير على الشاشة صدى $ STRING

إذا كنت تستخدم محرر نصوص Nano ، فيمكنك حفظ الملف بالضغط على Ctrl + O ثم Enter. أغلق المحرر بالضغط على Ctrl + X.

اجعل البرنامج النصي قابلاً للتنفيذ ثم قم بتشغيله

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

chmod + x ~ / myscript.sh

لتشغيل البرنامج النصي ، يمكنك الآن تشغيله في الجهاز عن طريق كتابة مساره. عندما تريد تشغيل البرنامج النصي في المستقبل ، ما عليك سوى فتح Bash shell واكتب المسار إلى البرنامج النصي.

~ / myscript.sh

(إذا كان البرنامج النصي في الدليل الحالي ، فيمكنك تشغيله باستخدام ./myscript.sh)

كيفية العمل مع ملفات الويندوز في برنامج باش

ذات صلة: كيفية الوصول إلى ملفات Ubuntu Bash الخاصة بك في Windows (ومحرك نظام Windows في Bash)

للوصول إلى ملفات Windows في البرنامج النصي ، ستحتاج إلى تحديد مسارها ضمن / mnt / c ، وليس مسار Windows الخاص بها. على سبيل المثال ، إذا أردت تحديد ملف C: \ Users \ Bob \ Downloads \ test.txt ، فستحتاج إلى تحديد مسار /mnt/c/Users/Bob/Downloads/test.txt. راجع دليلنا الخاص بمواقع الملفات في Bash shell الخاص بنظام Windows 10 لمزيد من التفاصيل.

كيفية دمج أوامر Bash في نص برمجي دفعة أو PowerShell

ذات صلة: كيفية تعيين توزيع Linux الافتراضي الخاص بك على نظام التشغيل Windows 10

أخيرًا ، إذا كان لديك ملف دفعي موجود أو برنامج PowerShell النصي تريد دمج الأوامر فيه ، فيمكنك تشغيل أوامر Bash مباشرةً باستخدام bash -cالأمر.

على سبيل المثال ، لتشغيل أمر Linux في نافذة موجه الأوامر أو PowerShell ، يمكنك تشغيل الأمر التالي:

bash -c "أمر"

تتيح لك هذه الحيلة إضافة أوامر Bash إلى الملفات الدفعية أو برامج PowerShell النصية. ستظهر نافذة Bash shell عند تشغيل أمر Bash.

تحديث : إذا كان لديك العديد من بيئات Linux المثبتة ، فيمكنك استخدام الأمر wslconfig لاختيار بيئة Linux الافتراضية المستخدمة عند تشغيل bash -cالأمر.

لإنشاء اختصار لبرنامج Bash النصي من داخل Windows ، ما عليك سوى إنشاء اختصار كالمعتاد. بالنسبة إلى هدف الاختصار ، استخدم bash -cالأمر الذي حددناه أعلاه ووجهه إلى نص Bash الذي أنشأته.

على سبيل المثال ، يجب أن تشير اختصارًا إلى " bash -c "~/myscript.sh"" لتشغيل مثال البرنامج النصي أعلاه. يمكنك أيضًا تشغيل هذا الأمر من نافذة موجه الأوامر أو PowerShell أيضًا.