首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从C#获取来自PowerShell当前状态(或上下文)的信息

从C#获取来自PowerShell当前状态(或上下文)的信息
EN

Stack Overflow用户
提问于 2011-04-04 03:30:22
回答 2查看 234关注 0票数 4

我见过一些代码示例,它们允许从C#加载特定的PowerShell脚本,然后从脚本中调用特定的函数:

代码语言:javascript
复制
// "dot-source my functions"
ps.AddScript(". .\MyFunctions.ps1", $false)
ps.Invoke()

我的问题是,既然已经执行了此操作,此文件中的所有函数都已全局加载;有没有办法从C#代码中将它们作为对象进行访问?

我希望能够从代码中看到哪些函数已经加载到全局上下文中,然后对它们进行分析(参见它们的参数列表等)。

这有可能吗?

谢谢Lior

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-04 05:47:58

好的。有很多种方法。也许最简单的方法是调用"dir function:\“。现在,最后一句话可能会让你的面条有点不对劲,但我会这么做的。它返回一个FunctionInfo实例集合,其中包含大量元数据。

票数 3
EN

Stack Overflow用户

发布于 2011-04-04 09:26:52

如果您使用的是v2,另一个类似的选择是将您的PS1文件转换为PSM1 (PowerShell模块)。然后,在C#中可以使用以下命令

代码语言:javascript
复制
import-module path\to\module\myfunctions.psm1

在那里,您可以发出以下命令

代码语言:javascript
复制
get-command -module myfunctions
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5531913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档