打破了Powershell对全局脚本命名空间的限制



如何在脚本中创建名称空间或"提供者"而不编写任何c#,或使用任何不在Windows Box内的东西?-换句话说,我可以通过脚本的名称来引用脚本中的变量。我希望在生成PoSH脚本时避免冲突。Set-Variable cmdlet没有给出任何线索,下一步看哪里,也许有一个cmdlet创建提供程序与所有的框架为您完成?目前,我正在使用"全局"(点击)变量列表来跟踪我定义的所有值,基本上我正在尝试构建一个库,在这种情况下,库提供数据值/常量。

您可以在被调用的脚本中检查$myinvocation以查找脚本名称。

听起来您可以在主脚本中实现一种伪名称空间,方法是将变量列表作为哈希表的哈希表,然后在主脚本中以$vars.scriptname.scriptvariable的形式引用每个值。

相关内容

最新更新