PowerShell:以编程方式访问脚本文档

PowerShell:以编程方式访问脚本文档,powershell,powershell-2.0,Powershell,Powershell 2.0,是否有一种方法可以在诸如get help之类的命令之外以编程方式加载.ps1脚本文件的文档?换句话说,除了过滤get help本身的字符串输出外,是否可以通过编程方式访问在.SYNOPSIS、.DESCRIPTION等下定义的文本 除此之外,我还试图找出脚本库中文档覆盖率的差距。我还希望能够显示某些脚本的列表,并附上它们的摘要。是的,这些脚本都可以访问Get Help返回一个对象(就像任何其他cmdlet一样),该对象的默认呈现方式是您在控制台中看到的 但是,如果您通过格式列表获取帮助的输出,如

是否有一种方法可以在诸如get help之类的命令之外以编程方式加载.ps1脚本文件的文档?换句话说,除了过滤get help本身的字符串输出外,是否可以通过编程方式访问在.SYNOPSIS、.DESCRIPTION等下定义的文本


除此之外,我还试图找出脚本库中文档覆盖率的差距。我还希望能够显示某些脚本的列表,并附上它们的摘要。

是的,这些脚本都可以访问
Get Help
返回一个对象(就像任何其他cmdlet一样),该对象的默认呈现方式是您在控制台中看到的

但是,如果您通过
格式列表
获取帮助的输出,如下所示:

get-help get-childitem | format-list
您将获得属性的名称-值对列表。要获取概要,可以执行以下操作:

get-help get-childitem |select-object -property synopsis
以及输出:

Synopsis
--------
Gets the files and folders in a file system drive.

如果您的
.ps1
文件中没有定义cmdlet(基于注释的帮助涵盖整个脚本),
获取帮助文件.ps1 |选择大纲
应该可以工作。否则,您需要“点源”文件以将cmdlet定义加载到内存中,然后如上所述使用
get help

是否要访问cmdlet的帮助,或者在开始时通过注释块访问有效的联机文档?您可以添加一个仅显示帮助的参数(例如,一个
-h
开关)。有趣的是,您必须显式地获取帮助才能使其工作-如果您使用“help”别名,则只获取文本。