![](https://xaas.ir/blog/wp-content/uploads/2022/06/What-is-PowerShell.jpg)
PowerShell چیست
به دنبال پیشرفت علم و تکنولوژی تمامی فعالیتهای روزانه به سمت اتوماسیون پیش میرود. به طوریکه تا جای ممکن نرمافزارها و برنامهها جای نیروی کار انسانی را برای انجام برخی از وظایف گرفتهاند و در عوض، نیروی متخصص برای نگهداری، محافظت و بهروزرسانی این نرمافزارها استخدام میشوند. با هدف اتوماتیک شدن برخی از دستورها، مایکروسافت نرم افزار PowerShell را طراحی کردهاست تا بتواند تا جای ممکن برخی از امور را به صورت اتوماتیک انجام داد. با ابر زس همراه باشید تا در مورد پاورشل و کاربرد آن مطلع شوید.
PowerShell چیست
پاورشل یک نرم افزار کامپیوتری است که از آن برای اتوماتیک کردن فعالیتها استفاده میشود. به عنوان مثال، شما میتوانید با استفاده از این نرمافزار برنامه ریزی کنید که یک فیلم در تاریخ و ساعت خاصی دانلود شود. دستور مورد نظر خود را یک بار به این نرم افزار میدهید، از آن به بعد به صورت اتوماتیک در زمان مورد نظر اجرا میشود. در نظر داشته باشید که برای اجرای PowerShell باید سیستم خود را روشن نگه دارید تا بتواند دستور داده شده را اجرا کند.
اما استفاده از این نرم افزار به این مورد ختم نمیشود. متخصصان آی تی از این نرمافزار برای برنامهریزی و اتوماتیک کردن وظایف ادمین استفاده میکنند. PowerShell در ابتدا برای سیستم عامل ویندوز طراحی و تولید شد، اما مایکروسافت در سال 2016 منابع خود را برای لینوکس و مک نیز در دسترس قرار داد.
PowerShell چگونه کار می کند
مایکروسافت این نرمافزار را در جهت اتوماتیک کردن کارها روانه بازار کردهاست. از جمله این فعالیتها می توان به پردازشهای گروهی در تعداد بالا اشاره کرد. همچنین این برنامه میتواند ابزارهای مدیریتی سیستم را ایجاد کند تا فرآیندهایی را که به صورت معمول و رایج اجرا میشوند، پیاده سازی کند. زبان برنامه PowerShell اتوماسیون را از راههای مختلفی انجام میدهد:
- با استفاده از cmdlets (کامندلِت تلفظ کنید) که کلاسهای خیلی کوچک .NET هستند و بعنوان دستورهای سیستمی ظاهر میشوند.
- با استفاده از اسکریپت (script) که ترکیبی از کامندلت و لاجیکهای مرتبط با آن است.
- با استفاده از برنامههای اجرایی که ابزارهای تک ایستا (stand-alone) هستند.
- با نصب کلاسهای استاندارد .NET
ادمینها از PowerShell برای مدیریت فعالیتهای زیادی استفاده میکنند. پاورشل میتواند اطلاعات را از سیستمهای عامل استخراج کند. تامین کنندگان PowerShell برنامههایی هستند که با استفاده از دستورهای متنی (command-line) به اطلاعاتی که در بانک اطلاعات خاصی ذخیره شدهاند، اجازه دسترسی میدهد. منظور از این بانکهای اطلاعاتی درایوهای فایل سیستم و دیتابیسهای ذخیره کننده تنظیمات ویندوز است. منظور از دستورهای متنی این است که شما دستور مورد نظر را به سیستم از طریق کیبورد و با تایپ کردن متن میدهید. از نرمافزار PowerShell میتوان به عنوان جایگزین برنامه Microsoft Command استفاده کرد.
نحوه اجرای PowerShell
برای اجرای این برنامه میتوانید از دو روش زیر اقدام کنید:
- از کلید میانبر windows + R استفاده کنید. در پنجرهای که باز میشود عبارت PowerShell را تایپ کنید و سپس ok را انتخاب کنید. برنامه باز میشود و میتوانید هر کدی که مد نظر دارید وارد کنید.
- در منو start عبارت PowerShell را در قسمت جست و جو وارد کنید تا برنامه را به شما نشان دهد.
ویژگی های کلیدی PowerShell
با اینکه مایکروسافت تواناییها و ویژگیهای این برنامه را با هر بهروزرسانی تغییر میدهد، اما برخی از ویژگیهای این نرمافزار ثابت است که در ادامه توضیح داده میشود:
-
قابلیت دستیابی
کاربران میتوانند به تمام مشخصات PowerShell با استفاده از دستورهایی (cmdlet) مانند Get-Command دسترسی پیدا کنند. این دستور میتواند لیستی از تمامی دستورات و عملکرد آنها را در کامپیوتری که با آن کار میکنید در دسترس شما قرار دهد. از برخی پارامترها میتوان برای محدود کردن حوزه جست و جو استفاده کرد.
-
کمک رسانی
کاربران میتوانند در مورد قواعد PowerShell و اجزای خاص آن مانند دستورهای این برنامه، از طریق کد Get- اطلاعات کسب کنند. این کد به شما امکان دسترسی به راهنمای آنلاین نیز میدهد.
-
دستورهای راه دور (remote)
ادمینها میتوانند با استفاده از تکنولوژیهایی مانند Windows Management Instrumentation و WS-Management از راه دور دستورهایی روی یک یا چند کامپیوتر اجرا کنند. بعنوان مثال برنامه WS-Management اسکریپت و دستورهای پاورشل را روی کامپیوترهایی که در راه دور قرار دارند، اجرا میکند.
-
قابلیت pipelining
با استفاده از نرمافزار PowerShell میتوانید دستورها را به هم ارتباط دهید. از طریق این سیستم شما دستوری را به نرمافراز میدهید و خروجی آن، دستور ورودی برای یک cmdlet دیگر است. این مدل از دستورهای PowerShell با علامت | نشان داده میشوند.
طرح های PowerShell
طرحهای (modules) مختلف در این برنامه به ادمینها این امکان را میدهند که چند بار از یک اسکریپت برای اتومات کردن کارها استفاده کند. یک طرح PowerShell را میتوان مجموعهای از دستورها تعریف کرد که با همکاری یکدیگر، تمام جوانب یک حیطه خاص را مدیریت میکنند. طرحهای این برنامه به ادمین اجازه میدهد که یک کد را به اشتراک بگذارد، بارگذاری کند یا به آن ارجاع دهد. سادهترین راه برای ایجاد یک طرح PowerShell، ذخیره آن بعنوان فایل PSM1 است.
یک طرح از PowerShell 4 عنصر مهم و اصلی را دارد:
- یک فایل PSM که خود طرح است.
- فایلهای کمکی و اسکریپت هایی که مورد نیاز آن هستند
- فایل پشتیبان که طرح را کامل توضیح میدهد
- یک کتابچه راهنما که محتوا را ذخیره میکند
بعلاوه، طرح PowerShell میتواند یکی از 4 نوع زیر باشد:
-
طرح اسکریپت
یک فایل PSM1 که دستورهای مختلف را در خود جای داده تا به ادمین اجازه دهد توابع مدیریتی را اجرا، وارد و خارج کند.
-
طرح دوتایی (Binary)
یک گروه از فریم ورک .NET (DLL file) که کدهای متغیر (compiled code) را شامل میشود. توسعه دهندگان به طور معمول از این مدل استفاده میکنند تا cmdlet هایی با ویژگیهای قدرتمند ایجاد کنند که اسکریپتهای PowerShell نتواند به راحتی آن را انجام دهد.
-
طرح آشکار (manifest)
این طرح، یک قایل PSM1 به همراه PSD1 مرتبط با خود است.
-
طرح Dynamic
این طرح به صورت پویا و توسط یک اسکریپت ایجاد میشود.
از PowerShell چه استفاده ای می شود؟
همانطور که متوجه شدیم، این نرمافزار سیستمی است که از طریق رابط گرافیکی به اتوماسیون دستورهای کامپیوتری کمک میکند. اما این به این معنی نیست که رابط و دستورهای متنی حذف شدهاند. در بستر و پس زمینه تمام دستورهای گرافیکی، کدهای دستوری متنی یا cmdlet ها قرار دارند که با پوشش گرافیکی خود را نشان میدهند. این پوشش به این دلیل ایجاد شدهاست که حفظ کردن دستورهای متنی برای افراد سخت است و ممکن است هنگام برقراری ارتباط، با مشکل مواجه شوند. در نتیجه محیطی گرافیکی ایجاد شده تا همه بتوانند با استفاده از این نرمافزارها دستورهای مورد نظر خود را اجرا کنند.
این نرمافزار تقریبا با تمام محصولات مایکروسافت ادغام شدهاست و برخی از اقدامات در مایکروسافت 365 و سرور 2016 وجود دارند که انجام آنها فقط از طریق PowerShell امکان پذیر است. با اینکه انجام برخی از وظایف و دستورها فقط از طریق این نرم افزار امکان پذیر است، آشنایی کامل با آن برای متخصصان آی تی یک مزیت محسوب میشود و میتواند انجام کارها را تا حد زیادی آسانتر و سریعتر کند.
بعد از اینکه به طور کامل نحوه کار کردن PowerShell را یاد گرفتید، دنیای جدیدی به روی شما گشوده میشود. با توجه به اینکه این نرمافزار به اتوماتیک و ساده شدن خیلی از کارها کمک میکند، شما میتوانید بخش زیادی از وظایف خود را با این نرمافزار انجام دهید. از وظایف خیلی ساده و پیش پا افتاده گرفته تا اسکریپت نویسی پیشرفته، میتوانید رنج گستردهای از تسکها را با استفاده از این برنامه ساده نویسی، و در وقت خود صرفه جویی کنید. PowerShell تنها یک نرمافزار برای اتوماسیون نیست، بلکه میتوان برای برنامه نویسی نیز از آن استفاده کرد. کارهای پیچیدهتر و تخصصیتری که میتوان از این طریق انجام داد شامل پیکربندی و استقرار سرور، ایجاد کاربر و وظایف مدیریتی در M365 اشاره کرد.