Windows Terminal در مقابل PowerShell: چه چیزی آنها را متفاوت میکند؟
به گزارش رسانه مدیاتی، اگر از ویندوز 11 یا ویندوز 10 استفاده میکنید، PowerShell و Windows Terminal را از پیش نصب شده خواهید دید. هر دو، رابط خط فرمان هستند که به شما امکان میدهند دستورات متنی را برای انجام وظایف مختلف وارد کنید، اما چه چیزی آنها را متفاوت میکند؟
PowerShell یک پیشرفت در خط فرمان است.
مایکروسافت، PowerShell را در سال 2006 معرفی کرد تا کارهایی را که افراد میتوانند در Command Prompt انجام دهند، به سطح بعدی ارتقا دهد. از آنجایی که مایکروسافت PowerShell را در فریمورک the .NET ساخته است، میتوانید از زبانهای the .NET با دستورات مبتنی بر متن برای تعامل با سیستم عامل خود استفاده کنید. محبوبترین زبان برای PowerShell C# است، که به شما امکان میدهد قفل ویژگیهای پیشرفته ابزار را باز کنید و بهرهوری خود را افزایش دهید.
علاوه بر دستورات استاندارد، PowerShell دارای بیش از 200 cmdlet است، نوع خاصی از کلاس C# که مایکروسافت آن را به عنوان “فرمانهای سبک” تعریف میکند. این تعداد بسته به ماژولهای نصب شده در سیستم شما، میتواند متفاوت باشد. وقتی PowerShell آنها را اجرا میکند، یک شی .NET را برمیگرداند که میتوانید آن را دستکاری کنید. برای مثال، این ویژگی به شما امکان میدهد نه تنها با برنامههای رایانهتان که توسط .NET Core پشتیبانی میشوند تعامل داشته باشید، بلکه ورودی آنها را بدون نیاز به کدهای پیچیده نیز پردازش کنید.
علاوه بر این، در حالی که PowerShell میتواند فایلهای دستهای را مانند CMD اجرا کند، همچنین به شما اجازه میدهد تا برای صرفهجویی در زمان، وظایف خود را در PowerShell زمانبندی کنید. به این ترتیب، میتوانید اقدامات خود را بهتر برنامهریزی کنید.
Windowa Terminal یک شبیهساز terminal است.
مایکروسافت Windows Terminal را به عنوان شبیهساز ترمینال در سال 2019 (در دوران ویندوز 10) معرفی کرد. در این زمینه، میتواند رفتار و عملکرد پوستههای خط فرمان، از جمله Command Prompt و PowerShell را شبیهسازی کند. این برنامه برای آوردن یک ابزار خط فرمان به ویندوز، که جامعه مدتهاست در مورد لینوکس به آن حسادت میکرده است، قابل توجه است: BASH (Bourne Again SHell).
برای اجرای BASH و سایر پوستههای لینوکس، از جمله ZSH، FISH، و Ksh (KornShell) در Windows terminal، ابتدا باید Windows Subsystems برای Linux (WSL) را فعال کنید. همچنین میتوانید Azure Cloud Shell را در ترمینال ویندوز اجرا کنید، که به شما امکان میدهد منابع Azure خود را از داخل windows terminal مدیریت کنید.
رابط کاربری و سفارشیسازی
یکی از قابل توجه ترین ویژگی های windows terminal، حرکت به یک رابط زبانهای مدرن است که به شما امکان میدهد چندین ابزار خط فرمان را در کنار هم اجرا کنید. به عنوان مثال، هنگام استفاده از PowerShell، BASH یا Azure میتوانید چندین نمونه از Command Prompt را همزمان اجرا کنید. این کاری است که PowerShell نمیتواند انجام دهد.
رابط کاربری PowerShell و Windows Terminal قابل تنظیم است. در PowerShell، تا حدی کمتر، میتوانید با تغییر فونتها، رنگهای فونت و درخواستها، محیط را به صورت بصری شخصیسازی کنید. میتوانید Windows terminal را به روشهای مختلفی از جمله تغییر تنظیمات نمایه شروع، طرحهای رنگی، تعاملات و گزینههای رندر، سفارشی کنید. توجه داشته باشید که میتوانید PowerShell را با استفاده از طرحهای رنگی از پیش تعیین شده، در windows terminal شخصیسازی کنید.
پشتیبانی از یونیکد و UTF
در windows terminal، به لطف پشتیبانی از Unicode و UTF، میتوانید از ایموجیها و کاراکترهای زبانهای دیگر استفاده کنید. هنگامی که این مورد را با موتور رندر متن GPU شتابیافته خود همراه کنید، میتواند کاراکترهای غیراستاندارد را بدون مشکل نمایش دهد. به عنوان مثال، میتوانید یک ایموجی را از یک وبسایت کپی کنید و آن را در windows terminal قرار دهید و به درستی نمایش داده شود.
همچنین PowerShell از Unicode و UTF پشتیبانی میکند، اما ممکن است با مشکلات رمزگذاری مانند اشکالات و محدودیتهای کاراکترهای خاص مواجه شوید. این امر به ویژه در مورد شخصیتهای زبانهای دیگر و شکلک ها صادق است. Windows Terminal تجربه بسیار بهتری در این زمینه فراهم میکند.
پشتیبانی جامعه
ابزارهای Windows Terminal و PowerShell پروژههای منبع باز با جوامع فعال هستند که در توسعه آنها مشارکت دارند. هر دو جامعه به پروژهها علاقهمند هستند و به طور مداوم از برنامههای خود پشتیبانی میکنند، عملکرد آنها را بهبود میبخشند و ویژگیهای بیشتری را اضافه میکنند.
همچنین اسناد گستردهای برای Windows Terminal و PowerShell وجود دارد، بنابراین هیچ کمبودی در انجمنها، آموزشها و راهنماها برای کمک به استفاده مؤثر از آنها نخواهید داشت.
Windows terminal تمام چیزی است که شما نیاز دارید.
PowerShell کمک میکند تا قدرت .NET Framework را به محیط خط فرمان بیاورد، در حالی که Windows Terminal پوستههای مختلف از جمله پوستههای لینوکس را در رایانه ویندوز شما شبیهسازی میکند. علاوه بر این، ترمینال گزینههای سفارشیسازی بیشتر و پشتیبانی بهتر از Unicode/UTF نسبت به PowerShell دارد. در حالی که هر یک از این ابزارها به خودی خود قدرتمند هستند، نیازی به باز کردن PowerShell با windows terminal نیست زیرا میتواند محیط shell را به خوبی شبیهسازی کند.