معمولا اکثر کاربران ویندوز به صورت اتفاقی حداقل یکبار با CMD یا prompt/">Command Prompt> دست و پنجه نرم کرده اند و میدانند که CMD یا Command Prompt برای اجرای دستورات ویندوز استفاده میشود. اما کمتر افرادی هستند که بدانند PowerShellچیست و چگونه کار میکند. PowerShell یک ابزار همانند Command Prompt میباشد که خیلی از Command Promptt پیچیده تر و قدرتمند تر است و در کل قرار است جای Command Prompt بگیرد. چرا که توانایی و کنترل PowerShell روی ویندوز خیلی بیشتر از Command Prompt میباشد.
برای اینکه ابزار PowerShell را بهتر درک کنید. ابتدا باید کار Shell را بدانید. در علوم کامپیوتر Shell به معنای یک رابط کاربری میباشد که دسترسی شما را به سرویس های سیستم عامل ممکن میسازد. به صورت کلی Shelll میتواند در دو حالت خط فرمان (Command Line Interface) یا گرافیکی (Graphical User Interface) ارائه شود.
مایکروسافت ابزار PowerShell را برای خودکار نمودن عمل مدیریت و پیکربندی سیستم عامل ویندوز توسعه داده است. ابزار قدرتمند PowerShell مبنی بر .Net Framework میباشد و شامل یک رابط کاربری خط فرمان و یک زبان Scriptt است.
یکی از ویژگیهای PowerShell وجود نسخه PowerShell ISE میباشد که کار Script نویسی را ساده نموده. چرا که در نسخه PowerShell ISE دیگر نیاز به تایپ دستورات نمیباشد و میتوانید از محیط گرافیکی این نسخه از PowerShell استفاده کنید.
اولین نسخه PowerShell در ماه نوامبر سال 2006 برای ویندوز XP و ویندوز Server 2003 و ویندوز Vista منتشر شد. و آخرین نسخه PowerShell 5.0 با ویندوز 10 ارائه شد.
در اصل مایکروسافت، PowerShell ویندوز را به عنوان یک ابزار کمک کننده برای افزایش سرعت در حل مشکلات، و خودکار نمودن انجام تنظیمات سیستم عامل ویندوز ارائه کرده است. مثلا شما میتوانید با استفاده از PowerShell کلیه USB های متصل به کامپیوتر های شبکه را مشاهده کنید یا اینکه Process های که در حالت Not Responding قرار گرفته اند را ببندید. یا بعضی از کارهایی خود را در حالت Background انجام دهید و دیگر کارهای خود را در حالت عادی.
اگر شما مدیر شبکه باشید میدانید ابزار PowerShell در کار کردن با Active Directory بسیار کمک کننده است. در PowerShell دستورات زیادی وجود دارد که میتوانید آنها را برای خود شخصی سازی کنید. و کارهای خود را ساده و سریع به انجام برسانید.
برای اجرای PowerShell راههای زیادی وجود دارد که در زیر به آنها اشاره میکنم:
برای استفاده از PowerShell ویندوز نیاز به یادگیری دستورات PowerShell دارید که کاملا با دستورات Command Prompt متفاوت است. اما گفتی است که در PowerShell میتوانید از دستورات CMD هم استفاده کنید. مثلا برای فهرست گیری از Process ها میتوانید از دستور TASKLIST که برای CMD میباشد استفاده کنید یا اینکه از دستور Get-Processs استفاده کنید که برای PowerShell است. در کل از رابط کاربری PowerShelll میتوانید برای اجرای هر دستوری استفاده کنید.
یکی از صد ها مزیت PowerShell وجود ماشین حساب است. شما میتوانید در محیط PowerShell اعداد را با هم ضرب و تقسیم کنید. مثلا در صورت تایپ 84*35 و فشردن کلید Enter جواب آنرا در سطر بعد مشاهده خواهید نمود.
مایکروسافت همراه ویندوز NT ابزاری را در اختیار کاربران قرار داده بود که با استفاده از آن کاربران میتوانستند با وارد کردن دستورات متنی با سیستمعامل ارتباط برقرار کنند. این ابزار همان کامند پرامپت است که فایل اجرایی آن cmd.exe نام دارد.
هرچند کامند پرامپت برای اولین بار همراه با ویندوز NT متولد شد، اما ارتباط متنی با سیستمعامل ویندوز پیش از این نسخه نیز مقدور بوده است. برای مثال میتوان به ویندوز ۹۵، ویندوز ۹۸ و ME اشاره کرد که همراه با آنها ابزاری برای صدور دستورات متنی به سیستمعامل قرار گرفته بود. این ابزار همان COMMAND.COM یا MS-DOS نام دارد.
در مقایسهی کامند پرامپت با داس باید به این موضوع اشاره کرد که محیط جدید صدور دستورات متنی ویندوز در مقایسه با داس از پیشرفتهایی برخوردار شده است.
یقینا این روزها بسیاری ویندوز را با رابط کاربری گرافیکی آن شناخته و از طریق همین رابط کاربری از آن استفاده میکنند. اما این موضوع باعث نمیشود تا کامند پرامپت کنار گذاشته شود؛ چراکه انعطافپذیری و قدرت بالای این محیط بعضا در رابط گرافیکی کاربر قابل دسترس نیست که برای مثال میتون به اسکریپت نویسی در فایلهای بچ اشاره کرد. همچنین برخی از کارها نیز با کامند پرامپت با سرعت بالاتری انجام میشوند.
کامند پرامپت شامل مجموعه دستوراتی است که اغلب کاربران با برخی از موارد سادهی آشنا هستند؛ چراکه برای حل برخی از موارد ساده و مشکلات موجود در سیستمعامل از این دستورات استفاده میشود. به بیان بهتر کامند پرامپت برای کاربران معمولی کاملا مناسب است، اما کامند پرامپت پاسخگوی نیاز شماری از کاربران حرفهایتر نیست و از اینرو جایگزینهایی نظیر Console که متن باز است برای این سیستم عامل ارائه شده است. اما مایکروسافت نیز بیکار ننشسته و پاورشل را برای چنین کاربرانی توسعه داده است.
اگر کامند پرامپت را به عنوان یک گوشیهوشمند عرضه شده در سال ۲۰۰۴ بپنداریم، پاورشل همچون یک گوشی هوشمند پرچمدار در سال ۲۰۱۵ است. شاید پاورشل بهترین محیط برای صدور دستورات متنی نباشد، اما یکی از قدرتمندترین ابزارها است که کاربران حرفهای و کاربلد از کار با آن راضی میشوند.
نیاز برای پاورشل توسط مایکروسافت در سال ۲۰۰۲ میلادی احساس شد. این کمپانی کار روی شل یا پروژهی موناد (Monad) را آغاز کرد تا اینکه موناد در سال ۲۰۰۵ میلادی بصورت عمومی در اختیار کاربران قرار گرفت. این ابزار در سال ۲۰۰۶ نام خود را به پاورشل تغییر داده و با سیستمعامل ویندوز یکپارچه شد. اما به واقع تفاوت این دو محیط در چه مواردی است؟
پاورشل این امکان را در اختیار کاربران قرار میدهد تا با استفاده از زبان برنامهنویسی سی شارپ،َ دستورات و اسکریپتهای خود را ایجاد کنند. زبان سی شارپ و پاورشل هر دو با فریمورک دات نت مایکروسافت هماهنگی دارند و همین موضوع باعث میشود تا دسترسی به توابع موجود و بسیاری از ابزارها به منظور ایجاد دستورات و اسکریپتهای بهتر در دسترستر و راحتتر باشد.
پاورشل دارای امکانات بسیار پیشرفتهای است که استفاده از این ابزار نسبتا جدید را در مقایسه با کامند پرامپت در زمینههایی نظیر مدیریت و نگهداری سیستم بسیار سهلتر میکند.
آیا شما هم باید از پاورشل استفاده کنید؟ کاربران معمولی به تمام ابزارها و قابلیتهای ارائه شده در پاورشل نیازی ندارند. کاربران کارکشته و حرفهای یقینا کار با این ابزار قدرتمند را لذتبخش خواهند یافت. باید به این نکته اشاره کرد که با توجه به قابلیتها و امکانات ارائه شده در پاورشل، استفاده از این ابزار نیازمند یادگیری و آشنایی با برخی از دستورات است؛ از اینرو بکارگیری آن به سادگی کامند پرامپت نیست.
پاورشل در آخرین نسخه از سیستم عامل مایکروسافت یا همان ویندوز ۱۰ که این روزها نظر بسیاری را به خود جلب کرده، با بهبودهایی همراه خواهد شد. در ادامه به بررسی مواردی خواهیم پرداخت که در ویندوز ۱۰ به پاورشل اضافه شده یا بهبود خواهند یافت:
PackageManagement: استفاده از پکیج منیجر راهی بسیار ساده برای مدیریت کل نرمافزار هایی است که دانلود، نصب و حذف میشوند. به جای گشت و گذار و جستجو در وبسایتهای مختلف با استفاده از PackageManagement که پیش از این با نام OneGet شناخته میشد، میتوان از طریق جستجو در مخازن مختلف موجود گزینههای دلخواه را انتخاب کرده و پس از دانلود اقدام به نصب این موارد نمود.
کاربران ویندوز ۸.۱ نیز میتوانند ابزار OneGet را استفاده کنند؛ چراکه این پکیج برای این نسخه از ویندوز نیز ارائه شده، اما برای استفاده از آن باید Windows Management Framework 5.0 روی سیستم نصب شود. ویندوز ۱۰ این ابزار را بصورت پیشفرض همراه با خود خواهد داشت و کاربران میتوانند به راحتی از آن استفاده کنند.
Secure Shell-SSH: سکیورشل مدتها است که به عنوان پروتکل اصلی در زمان ایجاد ارتباط ریموت رمزنگاری شده مورد استفاده قرار میگیرد. بدون استفاده از SSH سرقت اطلاعات در زمان برقراری ارتباط ریموت بسیار ساده است.
تا پیش از عرضهی نسخهی نهایی ویندوز ۱۰ به بازار برای استفاده از SSH کاربران ویندوز نیاز به استفاده از راهکارهای دیگری مبتنی بر این فناوری داشتند؛ اما تیم توسعه دهندهی پاورشل اعلام کرده که پشتیبانی از SSH را در ویندوز اضافه خواهد کرد.
قابلیتهای پاورشل: با ارتقا به نسخهی ۵، زبان پاورشل با قابلیتهای جدیدی همراه شده که از جملهی آن میتوان به مواردی نظیر کلاسها و انواع موجودیتهای شمارشی، دستورات جدید و رنگبندی دستورات و کنسول اشاره کرد.