Windows PowerShell — это кроссплатформенное решение, предназначенное для автоматизации задач, включающее оболочку командной строки, скриптовый язык и платформу управления конфигурацией.
Введение
Windows PowerShell предоставляет системным администраторам возможность автоматизации большинства рутинных задач. При ее помощи можно изменять настройки, выполнять остановку и запуск сервисов, а также осуществлять обслуживание практически всех приложений.
Следует отметить, что Windows PowerShell прежде всего является командной оболочкой с языком сценариев, первоначально созданной на базе платформы .NET Framework, а немного позже на основе платформы .NET Core. В отличие от оболочек, которые принимают и возвращают текстовые данные, Windows PowerShell способна работать с классами .NET, имеющими совокупность свойств и методов.
PowerShell предоставляет возможность исполнения обычных команд, а также обеспечивает доступ к объектам COM, WMI и ADSI. В ней применяются разные хранилища, аналогичные файловой системе или реестру Windows, для доступа к которым сформированы так называемые поставщики (providers). Следует также подчеркнуть возможность встраивания выполняемых компонентов PowerShell в иные приложения, что позволяет реализовать разные операции, в том числе и при посредстве графического интерфейса. Справедливо также и обратное утверждение, а именно, что большое число приложений для Windows могут предоставить доступ к своим интерфейсам управления через PowerShell.
Windows PowerShell
Windows PowerShell предоставляет возможность выполнять следующие действия:
- изменять настройки операционной системы,
- осуществлять управление службами и процессами,
- выполнять настройку ролей и компонентов сервера,
- выполнять установку программного обеспечения,
- осуществлять управление уже установленным программным обеспечением при помощи специальных интерфейсов,
- реализовать встраивание исполняемых компонентов в сторонние программные продукты,
- осуществлять создание сценариев, предназначенных для автоматизации задач администрирования,
работать с файловой системой, реестром windows, хранилищем сертификатов и так далее.
Известны две версии использования Windows PowerShell:
- В качестве эмулятора консоли с командной оболочкой.
- В качестве интегрированной среды сценариев Integrated Scripting Environment (ISE).
Для того чтобы получить доступ к интерфейсу командной строки, следует сделать выбор соответствующего ярлыка в меню Windows или осуществить запуск powershell.exe из меню «Выполнить». На экране должно появиться следующее окно:
Рисунок 1. Окно программы. Автор24 — интернет-биржа студенческих работ
Необходимо отметить, что там имеется много возможностей, которые являются привычными для пользователей командных оболочек для Unix-систем.
При работе с оболочкой существуют следующие полезные сочетания клавиш:
- Стрелки вверх и вниз позволяют прокручивать историю с целью повторения ранее использованных команд.
- Стрелка вправо в конце строки позволяет воспроизвести набор предыдущей команды посимвольно.
- Сочетание клавиш Ctrl + Home позволяет удалить уже набранный текст от точки курсора до начала строки.
- Сочетание клавиш Ctrl + End позволяет удалить текст от курсора до конца строки.
Клавиша F7 может показать окно с набранными командами и предоставляет возможность выбора одной из них. В консоли также присутствует возможность выделить текст мышью, копирование, позиционирование курсора, удаление.
Windows PowerShell ISE считается полноформатной средой разработки с редактором кода, который поддерживает вкладки и подсветку синтаксиса, конструктором команд, встроенной программой отладки и другим набором программных возможностей. Когда в редакторе среды разработки за именем команды стоит знак дефис, то пользователь может увидеть в ниспадающем списке весь перечень доступных параметров с указанием типа. Запуск PowerShell ISE можно осуществить или через ярлык из системного меню, или при помощи исполняемого файла powershell_ise.exe.
В Windows PowerShell присутствуют также так называемые командлеты (cmdlets), являющиеся специализированными классами .NET, в которых заложен разнообразный функциональный набор. Называются они по принципу «Действие-Объект» (или иначе, «Глагол-Существительное), а поделенная дефисом связка может считаться сказуемым и подлежащим, аналогично предложениям естественных языков. К примеру, Get-Help фактически значит «Получение-Помощи», а конкретно для PowerShell, это означает «Показать-Справку». По существу, это аналогия команды man в Unix-системах и мануалы в PowerShell следует открывать именно так. Но следует напомнить, что существует и онлайн-документация по PowerShell, которая у Microsoft является очень подробной.
Кроме Get в командлетах для того чтобы обозначить действия, применяются и другие глаголы (и не одни глаголы, если говорить точно). Ниже приведены примеры команд, используемых в командлетах:
- Команда Add, что означает добавить.
- Команда Clear, что означает очистить.
- Команда Enable, что означает включить.
- Команда Disable, что означает выключить.
- Команда New, что означает создать.
- Команда Remove, что означает удалить.
- Команда Set, что означает задать.
- Команда Start, что означает запустить.
- Команда Stop, что означает остановить.
- Команда Export, что означает экспортировать.
- Команда Import, что означает импортировать.
Существуют системные, пользовательские и опциональные командлеты, в результате исполнения которых должен вернуться объект или массив объектов. Они не являются чувствительными к регистру, то есть, с позиций интерпретатора команд нет различий между Get-Help и get-help. Для разделения применяется символ точка с запятой «;», но поставить его следует только в том случае, когда в одной строке исполняется несколько командлетов. Командлеты Windows PowerShell могут группироваться в модули, например, NetTCPIP, Hyper-V и так далее.