Powershell脚本,用于从powershell脚本中提取数据库

时间:2009-08-14 21:09:58

标签: powershell-v2.0

是否有人知道脚本或PowerShell Windows实用程序,或第三方实用程序,codeplex,poshcode脚本,应用程序等等,它们可以读取和扫描powershell脚本并详细说明什么是snapins,提供程序,程序集,cmdlet,函数,等等,脚本需要执行。

感谢。 鲍勃。

2 个答案:

答案 0 :(得分:2)

首先要做的事情:不,我不知道这样的脚本/实用程序。

我怀疑,你可以通过Powershell解析自身的能力获得相当远的目标。

例如,以下脚本:

function test {}

test

$content = gc $args[0]
[System.Management.Automation.PsParser]::Tokenize($content, [ref] $null) |
   ? { $_.Type -eq "Command" } | ft

将自己作为参数产生以下输出:

Content                  Type          Start         Length      StartLine    StartColumn        EndLine      EndColumn
-------                  ----          -----         ------      ---------    -----------        -------      ---------
test                  Command             20              4              3              1              3              5
gc                    Command             39              2              5             12              5             14
?                     Command            127              1              6             76              6             77
ft                    Command            157              2              6            106              6            108

因此,“Command”类型至少包括函数和cmdlet。您可以通过取消别名这些令牌来进一步剖析。

这可能已经可以告诉你一些内容,但无法接近你的可能所需的Powershell脚本的详尽列表。

但至少在管理单元或模块的情况下,你可能需要一些魔法才能准确地知道缺少什么

答案 1 :(得分:0)

实际上,我们制作了几个这样的实用程序:

http://scriptcop.start-automating.com - 免费在线/可下载的PowerShell脚本静态分析 http://scriptcoverage.startautomating.com/ - Powershell脚本的代码覆盖率工具

模块ShowUI(Get-ReferencedCommand)中还有一个工具可以完全满足您的需求。它查看命令中使用的每个命令,以及它们使用的每个命令,以生成必须包含的所有命令的列表。

您可以使用它:Get-ReferenedCommand -ScriptBlock { Start-MyCommand }

希望这有助于