是否有人知道脚本或PowerShell Windows实用程序,或第三方实用程序,codeplex,poshcode脚本,应用程序等等,它们可以读取和扫描powershell脚本并详细说明什么是snapins,提供程序,程序集,cmdlet,函数,等等,脚本需要执行。
感谢。 鲍勃。
答案 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 }
希望这有助于