PowerShell — розроблена Microsoft розширювана оболонка з інтерфейсом командного рядка, що поєднує в собі мову сценаріїв і інструментарій управління конфігурацією і автоматизації робіт. Перша версія випущена в 2006 році і доступна для Windows XP SP2, Windows Server 2003, Windows Vista, і вбудована в Windows Server 2008 як опціональний компонент.

Windows PowerShell
Екранна копія сесії PowerShell
ТипОболонка операційної системи
РозробникКорпорація Microsoft®
Перший випуск14 листопада 2006; 18 років тому (2006-11-14)
Стабільний випуск7.4.3 (18 червня 2024; 5 місяців тому (2024-06-18))
Платформа.NET Framework
Операційна системаWindows 10,
Windows Server 2016,
Windows 8.1,
Windows Server 2012,
Ubuntu,
CentOS,
macOS
Мова програмуванняC Sharp[1]
Доступні мовиБагатомовна
Стан розробкиАктивний
ЛіцензіяЛіцензія MIT
Репозиторійgithub.com/PowerShell/PowerShell
ВебсайтWindows PowerShell

У серпні 2016 компанія Microsoft оголосила[2] про відкриття сирцевих текстів командної оболонки PowerShell під ліцензією MIT. Одночасно заявлено про портування PowerShell для Linux і macOS. Перші експериментальні складання доступні для Ubuntu і CentOS 7. Слід зазначити, що відкрита лише початкова порція коду PowerShell, додаткові можливості будуть відкриватися в міру розвитку багатоплатформового відкритого варіанту.

Огляд

ред.

PowerShell оптимізований для автоматизації виконання операцій в командному рядку і надає вбудовані засоби для обробки структурованих даних в таких форматах, як JSON, CSV і XML, а також підтримує REST API і об'єктні моделі. Крім командної оболонки пропонується об'єктно-орієнтована мова для розробки сценаріїв і набір утиліт для управління модулями і скриптами. Починаючи з гілки PowerShell 6 проект розвивається з використанням платформи .NET Core.

За замовчуванням PowerShell передає телеметрію з описом ОС і версією програми (для відключення телеметрії необхідно виставити змінну оточення POWERSHELL_TELEMETRY_OPTOUT = 1 перед запуском).

Windows PowerShell інтегрований з .NET Framework і надає оточення для виконання адміністративних завдань шляхом виконання командлетів (cmdlets) — особливих .NET класів, що реалізовують окремі операції, сценаріїв, побудованих з командлетів, виконуваних файлів самостійних застосунків, або екземплярів звичайних класів .NET. Оболонка має доступ до різних сховищ даних як файлова система або реєстр, через механізм постачальників Windows PowerShell.

Windows PowerShell також забезпечує механізм хостингу, через який виконуване середовище Windows PowerShell може бути впроваджено всередину інших застосунків, які можуть використовувати функціональність Windows PowerShell для виконання певних операцій, включно з тими, що доступні через графічний інтерфейс. Ця можливість вже використовується Microsoft Exchange Server 2007, управління яким доступно командлетам PowerShell, а також забезпечені і впроваджені графічні інструменти управління, коли хост PowerShell викликає необхідні командлети. Іншим застосунком Microsoft, який робить своє управляння доступним через командлети PowerShell, є Microsoft SQL Server 2008.

Windows PowerShell включає свою власну розширювану консольну систему допомоги, що нагадує сторінки man в оболонках Unix. На сторінках допомоги описуються командлети і концепції PowerShell. Щоб побачити допомогу, слід викликати командлет Get-Help. Онлайнова довідка для Windows PowerShell оновлюється щотижня на TechNet Library [Архівовано 20 серпня 2008 у Wayback Machine.].

Версії

ред.

PowerShell розроблявся під робочим іменем «Monad», і був вперше продемонстрований на Professional Developers Conference в вересні 2003. Microsoft випустила п'ять версій PowerShell, всі з яких досі підтримуються.[3]

Версія 1.0

ред.

Version 1.0 випущена в 2006 для Windows XP SP2, Windows Server 2003 SP1 та Windows Vista. Вона є додатковим компонентом Windows Server 2008.[4]

Версія 2.0

ред.

Версія 2.0 інтегрована з Windows 7 та Windows Server 2008 R2[5] а також може бути встановлена на Windows XP з Service Pack 3, Windows Server 2003 з Service Pack 2, та Windows Vista з Service Pack 1.[6][7]

Версія 3.0

ред.

Версія 4.0

ред.

Версія 5.0

ред.

Публічний випуск версії 5.0 став доступним з п'ятою версією Windows Management Framework 5.0 (WMF5) 3 квітня 2014.[8] До ключових особливостей входять скриптлети OneGet для підтримки менеджера пакетів Chocolatey,[9] та розширення підтримки керування свічами до мережевих свічів другого рівня.[10]

Дієслова

ред.

Дієслова з яких можуть починатись назви командлетів можна поділити на групи:[11] Список можливих дієслів залежить від використовуваної версії PowerShell та може бути отриманий командою Get-Verb.

Спільні
Add, Clear, Close, Copy, Enter, Exit, Find, Format, Get, Hide, Join, Lock, Move, New, Open, Optimize, Pop, Push, Redo, Remove, Rename, Reset, Resize, Search, Select, Set, Show, Skip, Split, Step, Switch, Undo, Unlock, Watch
Комунікація
Connect, Disconnect, Read, Receive, Send, Write
Дані
Backup, Checkpoint, Compare, Compress, Convert, ConvertFrom, ConvertTo, Dismount, Edit, Expand, Export, Group, Import, Initialize, Limit, Merge, Mount, Out, Publish, Restore, Save, Sync, Unpublish, Update
Діагностика
Debug, Measure, Ping, Repair, Resolve, Test, Trace
Життєвий цикл
Approve, Assert, Complete, Confirm, Deny, Disable, Enable, Install, Invoke, Register, Request, Restart, Resume, Start, Stop, Submit, Suspend, Uninstall, Unregister, Wait
Інше
Use
Безпека
Block, Grant, Protect, Revoke, Unblock, Unprotect

Інші дієслова, як наприклад checkout та commit хоча й можливі але не допустимі. Замість них використовуються стандартні дієслова Request та Submit. Додаткові дієслова можуть описуватись у формі аліасів. Щоб перелічити командлети для заданого дієслова, можна використати команду Get-Command -Verb <string[]>.

Powershell ISE

ред.

PowerShell 2.0 включає в себе графічне середовище Windows PowerShell Integrated Scripting Environment (раніше відоме як Graphical Windows PowerShell) що надає вбудований зневадник, підсвітку синтаксису, автодоповнення та до восьми консолей у вкладках, а також можливість запускати лише виділені частини у скриптах.

Див. також

ред.

Примітки

ред.
  1. The powershell Open Source Project on Open Hub: Languages Page — 2006.
  2. PowerShell is open sourced and is available on Linux. Архів оригіналу за 27 серпня 2016. Процитовано 18 вересня 2016.
  3. Download Windows PowerShell. 30 грудня 2008. Архів оригіналу за 28 травня 2010. Процитовано 27 червня 2010.
  4. Chung, Leonard; Snover, Jeffrey; Kumaravel, Arul (14 листопада 2006). It's a Wrap! Windows PowerShell 1.0 Released!. Windows PowerShell Blog. Microsoft. Архів оригіналу за 19 березня 2014. Процитовано 24 червня 2014.
  5. PowerShell Team (28 жовтня 2008). PowerShell will be installed by default on Windows Server 08 R2 (WS08R2) and Windows 7 (W7)! - Windows PowerShell Blog - Site Home - MSDN Blogs. Blogs.msdn.com. Архів оригіналу за 4 січня 2010. Процитовано 27 вересня 2011.
  6. Windows Management Framework is here!. 27 жовтня 2009. Архів оригіналу за 31 жовтня 2009. Процитовано 30 жовтня 2009.
  7. Microsoft Support Knowledge Base: Windows Management Framework (Windows PowerShell 2.0, WinRM 2.0, and BITS 4.0). Support.microsoft.com. 23 вересня 2011. Архів оригіналу за 13 жовтня 2013. Процитовано 27 вересня 2011.
  8. http://www.microsoft.com/en-us/download/details.aspx?id=42316&WT.mc_id=rss_alldownloads_all
  9. Архівована копія. Архів оригіналу за 5 травня 2015. Процитовано 24 червня 2014.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  10. Архівована копія. Архів оригіналу за 30 червня 2014. Процитовано 24 червня 2014.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  11. Approved Verbs for Windows PowerShell Commands [Архівовано 30 липня 2013 у Wayback Machine.] (англ.)

Посилання

ред.