حتى عام أو نحو ذلك ، يبدو أن Microsoft تتجه في الاتجاه الصحيح. أولاً ، تضمين نظام Linux الفرعي في سطر أوامر DOS. بعد ذلك ، نقل تطبيق Microsoft Edge إلى Chromium. ومؤخرًا ، يشاهد تطبيق Phone Companion ترقيات هائلة لزيادة التوافق مع Android. آخر الأخبار السارة هي “Windows Terminal الجديد“. يتوفر Terminal المُطور للتنزيل من خلال متجر Microsoft. الشيء الممتع في هذا الأمر هو أنه يمكن تشغيل أوامر Windows و Powershell و Unix تحت وحدة Terminal واحد.
ولكن ، مع كل هذه الإضافات الساحقة ، ما هي أوامر Unix التي يجب أن تعرفها حقًا؟ لذلك ، إليك أهم الأوامر التي يجب استخدامها مع Windows Terminal الجديد.
يختلف Windows Terminal الجديد عن نظام Windows الفرعي لنظامي Linux و Ubuntu Virtual Machine.
ما الجديد في Windows Terminal
- بحتوي Windows Terminal الجديدة على الترقيات التالية
- النسخ واللصق في المربع لـ PowerShell ، CMD
- دعم متعدد التبويبات
- دعم الرموز التعبيرية وتقديم النص القائم على GPU.
- يدعم ملامح متعددة
أوامر Unix لاستخدامها مع Windows Terminal الجديد
يجب عليك التبديل إلى Ubuntu لتشغيل جميع هذه الأوامر. بدلاً من ذلك ، يمكنك أيضًا كتابة “bash
” والوصول إلى Unix Shell من نافذة Powershell و cmd أيضًا.
1. cat & vi
لا يتيح لك cmdlet لـ Windows تحرير الملف النصي أو عرضه داخل Terminal نفسه. الآن باستخدام Terminal الجديد ، يمكنك استخدام cat command
أو vi
لعرض أو تحرير الملف داخل Terminal. يدعم Terminal الجديد جميع برامج تحرير النصوص الأصلية في Unix مثل nano
أو vi
أو vim
أو ed
.
مثال: cat abc.txt
2. cp or mv
تمامًا مثل أمر نسخ و نقل Windows الأصلي ، لديك أيضًا “cp
” و “mv
” في Terminal الخاص بـ Unix. الفرق الرئيسي الوحيد هو أن cp
و mv
يدعمان مفاتيح أكثر بكثير من أوامر Windows الأصلية. على سبيل المثال ، يمكنك إنشاء روابط ثابتة وروابط لينة للملفات باستخدام هذه الأوامر. في حالة عدم معرفتك ، فإن الارتباطات اللينة هي مؤشرات تعيد توجيه محتويات الملف الأصلي في حين أن الارتباط الثابت هو نسخة طبق الأصل من الملف الأصلي. لا يمكن أن توجد الارتباطات اللينة بدون الملف الأصلي بينما لا يزال الارتباط الثابت يقدم البيانات.
مثال: cp -sv /root/temp/photos /root/current/photos
3. tar
يتيح لك Windows ضغط الملف من خلال سطر الأوامر ولكنه لا يستطيع التعامل مع tars
أو bzip.
مع Unix ، يمكنك الحصول على أداة مساعدة لسطر الأوامر الأصلي تسمى tar
والتي يمكنها إجراء عمليات الضغط و فك الضغط لوحدها. وهي تدعم عددًا من تنسيقات Zip ويمكنك حتى تحديد نسبة الضغط والخوارزمية أثناء إنشاء ملف Zip في حالة عدم وجود tar
في bash
، قم بتثبيته من خلال تشغيل الأمر sudo apt update && sudo apt-get install tar
.
مثال: tar -cvf test.zip abc.txt
4. man
بالعودة إلى الكلية عندما كنت أتعلم نظام Unix ، اعتاد أن يكون الأمر man
المنقذ للحياة خلال التدريب العملي. الآن ، مقارنة ذلك بإدخال تعليمات Windows ، فقد كان دائمًا غامضًا. الشيء الجيد في Windows Terminal الجديد هو أنه يدعم “man
” أي الإدخال اليدوي للأوامر. على الرغم من أن هذه الإدخالات اليدوية مخصصة فقط لأوامر Unix ، إلا أنها مفيدة للغاية للمستخدمين القادمين من Windows.
مثال: man vim
5. type
type هو أداة مفيدة للغاية في Unix. كمبتدئ ، يتيح لك التمييز بين الوظائف والأسماء المستعارة والكلمات الرئيسية المحجوزة في Unix. كل ما عليك فعله هو أن تلحق الأمر بكلمة type
وهو يخبرك بموقع الملف أو الاسم المستعار. يتيح لك أمر type
أيضًا إلحاق أوامر متعددة والتشغيل للحصول على إخراج ملخّص.
مثال: type date ls test
6. ps & kill
يعمل الأمر ps
مثل قائمة المهام في Windows. يعرض العمليات الجارية حاليًا بواسطة المستخدمين المتصلين بالنظام. من الأسهل تحديد العمليات ثم قتل الوظائف إذا كانت تسبب أي تشنج للنظام. إن مفتاح التبديل الخاص بي الذي يستخدم بشكل متكرر مع الأمر ps
هو ps-aux
لأنه يخبرني مسار المستخدم الذي يقوم بتشغيل الأمر بكل الذاكرة واستهلاك وحدة المعالجة المركزية. يمكنك استخدام الأمر kill
لقتل الجلسة بواسطة PID
.
مثال: ps -aux && kill 338
7. df & du
لم يكن لدى Windows أداة مساعدة لسطر الأوامر مخصصة لمنحك استخدام ملف القرص أو مساحة خالية على القرص. كان الحل من خلال الأمر dir. لكن مع وجود Unix، لديك الأداة المساعدة “df
” و “du
“. يخبرك الأمر df
بالمساحة الخالية لنظام ملفات Linux ، بينما يخبرك du
باستخدام مساحة الملفات والدلائل الفردية. لقد استخدمت الأمر df إلى جانب crontab
لإرسال تنبيهات مساحة القرص على الخادم الخاص بي.
لحسن الحظ ، يمنحك df
أيضًا رؤى ثاقبة حول نظام ملفات windows ولكن اصطلاح التسمية هو IFS
.
مثال: df -h
8. apt-get
لم يكن لدى Windows مدير حزم جيدًا واضطررت إلى اللجوء إلى Chocolatey الذي كان على ما يرام إلى أقصى الحدود. ولكن الآن ، مع Windows Terminal الجديد ، أصبح استخدام apt-get
مريحًا وفعالًا. يمكّنك هذا أيضًا من استخدام كافة الأدوات المساعدة لسطر الأوامر apt-get
مثل ffmpeg و youtube-dl و sox على Windows. الخيار المفضل هو ffmpeg الذي يتيح لي ترميز الفيديو أو الصوت بسرعة مع أمر واحد فقط.
مثال: sudo apt-get install sox
9. wget
الأمر wget هو أداة مساعدة أخرى لسطر الأوامر تتيح لك تنزيل المحتويات من خادم الويب. قد لا تتم إضافته محليًا ، لذا سيتعين عليك تنزيله عبر apt-get
. وهو يدعم التنزيل عبر HTTP
و HTTPS
و FTP
. تشمل ميزاته التنزيل المتكرر وتحويل الروابط للعرض دون اتصال لـ HTML المحلي ودعم الوكلاء.
مثال: wget example.com
10. crontab
يمكنك اعتبار crontab كإصدار سطر أوامر من Windows Task Scheduler. يتيح لك جدولة أمر ليتم تشغيله في وقت معين ، يوم من الأسبوع أو الشهر. إذا قمت بدمج نص برمجي shell
في الأمر ، يمكنك القيام بمهام متعددة بشكل متكرر باستخدام crontab
. لقد استخدمت crontab
كثيرا في الأيام السابقة لأتمتة المهام على خادم AIX
. لنفترض أنك تريد تشغيل رنين كل ساعة ، يمكنك القيام بذلك باستخدام crontab
.
أيضًا ، لا ينبهك crontab
إذا لم يتم تشغيل المهمة أو فشل الأمر. لذلك ، تحتاج إلى تسجيل إخراج crontab
يدويًا إلى ملف سجل.
مثال: crontab -e
11. Shell Scripts
الغرض الأكثر أهمية الذي يخدمه Windows Terminal الجديد هو النصوص البرمجية . يسمح لك Terminal الجديد بتشغيل النصوص البرمجية للـ Shell
، والنصوص البرمجية للـ Powershell
، والنصوص البرمجية للـ batch
، وما إلى ذلك. على وجه الخصوص ، أحب النصوص البرمجية للـ Shell
ومن الجيد استخدامها عبر PowerShell
. لطالما كرهت النصوص البرمجية في PowerShell
نظرًا لأن أوامر cmdlets
معقدة للغاية مع أسماء المحولات الطويلة. من ناحية أخرى ، فإن shell script بسيط مع دمج أوامر Unix العادية.
على سبيل المثال ، إذا أردت معرفة المستخدمين الذين فاموا بـ تسجيل الدخول على خدمتي ، فأنا بحاجة إلى كتابة نص برمجي طويل في PowerShell
في حين أن shell script
يمكن أن يفعل ذلك في أمر واحد.
#!/bin/bash echo `w`
تغليف
يمكننا أن نتوقع بعض الترقيات الرئيسية في هذا الإصدار من Windows Terminal. يمكن أن تكون التغييرات مرئية أو وظيفية ، وسوف أقوم بتحديث هذه المقالة بانتظام مع تضمين كل هذه التغييرات. لأية استفسارات أو أسئلة ، اسمح لي أن أعرف في التعليقات أدناه وسأعود إليك.