Microsoft.PowerShell.Crescendo 概述

与其他 shell 一样,PowerShell 能够调用命令行工具。 但是,如果命令行工具可以参与 PowerShell 管道并利用 PowerShell 中的参数行为,则会改善体验。

Crescendo 提供了一个框架,用于快速创建 PowerShell cmdlet,这些 cmdlet 可以 放大 命令行工具,无论平台如何。 基于 Crescendo 的模块的目标是创建使用命令行工具的 PowerShell cmdlet,并且与该工具不同,返回 PowerShell 对象而不是纯文本。

Crescendo 的工作原理

Crescendo 框架有两个主要组件:

  • 描述所需 cmdlet 的 JSON 配置文件
  • 分析命令行工具输出并返回对象的输出处理程序函数

Crescendo 模块提供 cmdlet,以帮助你创建 JSON 配置并生成包含定义的 cmdlet 的模块。 必须编写自己的输出处理程序函数来返回 PowerShell 对象。

渐强特定术语

Crescendo 的文档包括一些新术语。

  • 命令行工具 - 安装在系统上的本机可执行文件
    • 例如:ipconfig.exe
  • command - 您在命令行上键入的内容以调用可执行文件,其中可能包括特定参数
    • 例如:ipconfig.exe /all
  • amplified 命令 - 使用 Crescendo 创建的 cmdlet,用于将命令包装在 PowerShell 函数中
    • 例如:Get-IpConfig -All

Crescendo 配置文件架构

当您创作 Crescendo 配置文件时,您正在编写 JSON。 为了方便、验证和改进开发人员体验, 提供了架构文件

可以查看架构,查看必需和可选的配置设置、其说明以及它们接受的值类型。 在 Visual Studio Code 中创作配置文件时,可以获得许多有用的功能,包括 IntelliSense、编辑时的验证等。