Обзор Microsoft.PowerShell.Crescendo

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

Crescendo предоставляет платформу для быстрого создания командлетов PowerShell, которые усиливают программы командной строки, независимо от платформы. Цель модуля на основе Crescendo — создать командлеты PowerShell, которые используют программу командной строки и, в отличие от этого средства, возвращают объекты PowerShell вместо обычного текста.

Как работает Crescendo

Платформа Crescendo имеет два main компонента:

  • Файл конфигурации JSON с описанием нужных командлетов.
  • Функции обработчика выходных данных, которые анализируют выходные данные из программы командной строки и возвращают объекты

Модуль Crescendo предоставляет командлеты, которые помогут вам создать конфигурации JSON и создать модуль, содержащий определенные командлеты. Необходимо написать собственные функции обработчика выходных данных, возвращающие объекты PowerShell.

Терминология, специфичная для Крещендо

Документация по Crescendo включает некоторые новые термины.

  • Программа командной строки — собственный исполняемый файл, установленный в системе.
    • Пример: ipconfig.exe
  • command — то, что вы вводите в командной строке для вызова исполняемого файла, который может включать определенные параметры.
    • Пример: ipconfig.exe /all
  • команда amplified — командлет, созданный с помощью Crescendo для переноса команды в функцию PowerShell.
    • Пример: Get-IpConfig -All

Схема файла конфигурации Crescendo

При создании файла конфигурации Crescendo вы пишете JSON. Для удобства, проверки и улучшения возможностей разработки доступен файл схемы.

Вы можете просмотреть схему, чтобы просмотреть обязательные и необязательные параметры конфигурации, их описания и типы значений, которые они принимают. При создании файла конфигурации в Visual Studio Code вы получаете множество полезных функций, включая IntelliSense, проверку во время редактирования и многое другое.