Оболочка PowerShell предназначена для улучшения работы с командной строкой и средой исполнения скриптов, устраняя давние проблемы и добавляя новые функции.

Понятность

Оболочка Windows PowerShell обладает несложными для понимания функциями. Например, для нахождения списка командлетов, служащих для просмотра и изменения служб Windows, введите:

get-command *-service

Определив, какой командлет выполняет задачу, можно узнать больше об этом командлете при помощи командлета Get-Help. Например, чтобы отобразить справку по командлету Get-Service, введите следующую команду:

get-help get-service

Для полного понимания вывода этого командлета, нужно направить его вывод по конвейеру в командлет Get-Member. Например, при выполнении следующей команды отображаются сведения об элементах выходных объектов командлета Get-Service.

get-service | get-member

Согласованность

Управление системами может быть сложной задачей, и средства, имеющие согласованный интерфейс, помогают контролировать присущую такому управлению сложность. К сожалению, ни средства командной строки, ни объекты COM, для которых могут быть написаны скрипты, не обладают такой согласованностью.

Согласованность оболочки Windows PowerShell является одним из основных ее преимуществ. Например, при изучении способов использования командлета Sort-Object эти знания могут быть применены для сортировки вывода какого-либо командлета. Нет необходимости изучать различные процедуры сортировки для каждого командлета.

Кроме того, разработчики командлетов не должны писать функции сортировки для соответствующих командлетов. Windows PowerShell дает им основу, предоставляющую базовые функции и вынуждающую их быть согласованными в отношении многих аспектов интерфейса. Эта основа ограничивает свободу, которая обычно предоставляется разработчику, но, в свою очередь, значительно облегчает ему создание надежных и удобных в использовании командлетов.

Интерактивная среда и среда исполнения скриптов

Windows PowerShell является средой, в которой сочетаются интерактивные возможности и возможности исполнения скриптов, благодаря чему обеспечивается доступ к средствам командной строки и к объектам COM. Кроме того, эта среда позволяет использовать мощь библиотеки классов .Net Framework (FCL).

Эта среда улучшает работу с командной строкой Windows благодаря предоставлению интерактивной среды с несколькими средствами командной строки. Оболочка также улучшает возможности исполнения сценариев сервера сценариев (WSH), что позволяет использовать большое число средств командной строки и объектов автоматизации COM, но не предоставляет интерактивной среды.

Сочетанием доступа ко всем этим возможностям оболочки Windows PowerShell расширяет возможности интерактивного пользователя и создателя скриптов, улучшает управляемость администрирования системы.

Объектно-ориентированная среда

Хотя взаимодействие с оболочкой Windows PowerShell осуществляется при помощи ввода команд в виде текста, оболочка Windows PowerShell основана не на тексте, а на объектах. Выходным элементом команды является объект. Объект выхода можно послать в другую команду в качестве ее входа. В результате оболочка Windows PowerShell предоставляет людям, имеющим опыт работы с другими оболочками, знакомый интерфейс, вводя в то же самое время новую, мощную парадигму командной строки. Windows PowerShell расширяет концепцию пересылки данных между командами, позволяя пересылать объекты, а не просто текст.

Несложный переход к исполнению скриптов

Оболочка Windows PowerShell облегчает переход от интерактивного ввода команд к созданию и исполнению скриптов. Можно вводить команды в командную строку Windows PowerShell для выявления команд, выполняющих ту или иную задачу. Затем эти команды можно сохранить в записи или в журнале перед копированием их в файл для использования в качестве скрипта.