gpt4 book ai didi

powershell - 从模块中导出 Powershell 5 枚举声明

转载 作者:行者123 更新时间:2023-12-04 00:38:10 25 4
gpt4 key购买 nike

我在模块中定义了一个枚举类型。加载模块后,如何将其导出为可从外部访问?

enum fruits {
apple
pie
}

function new-fruit {
Param(
[fruits]$myfruit
)
write-host $myfruit
}

我的高级函数采用枚举而不是 ValidateSet如果枚举可用,则有效,但如果不可用,则失败。

更新:
将它分离成一个 ps1 并对其进行点源(ScriptsToProcess)是可行的,但是我希望有一种更清洁的方法。

最佳答案

尝试从 5.0.x 上的嵌套模块 (.psm1) 使用/导出枚举时遇到了同样的问题。

通过使用 Add-Type 设法使其正常工作反而:

Add-Type @'
public enum fruits {
apple,
pie
}
'@

然后你应该可以使用
[fruits]::apple

关于powershell - 从模块中导出 Powershell 5 枚举声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40348069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com