gpt4 book ai didi

powershell - 使用 Powershell DSC 刷新环境变量 {不工作}!

转载 作者:行者123 更新时间:2023-12-03 01:12:14 25 4
gpt4 key购买 nike

在成功安装 JAVA 后,我的 DSC 脚本正在通过自定义模块设置 JAVA_HOME。

然后,我尝试使用脚本资源中的以下行检索更新的 JAVA 主页 -

SetScript = "[Environment]::SetEnvironmentVariable('JAVA_HOME',[System.Environment]::GetEnvironmentVariable('JAVA_HOME','Machine'))"

我可以看到说明资源已执行的详细日志。但是,在脚本完成后,我的控制台仍然保留之前的 。 JAVA_HOME .

我遇到的问题是,我的脚本(进一步向下)需要调用一个使用 JAVA_HOME 的批处理文件,但由于 session 传递了错误的值,它失败并显示“系统找不到指定的路径”。

任何人都可以帮助解决这个问题吗?

免责声明:我对powershell非常陌生。请详细说明。

最佳答案

作为更简洁的替代方案,有一个用于 的 DSC 资源。环境 .从他们在 GitHub 中的代码来看,如果您想尝试,它似乎也有 [environment]::GetEnvironmentVariable("FOOBAR", "MACHINE") 部分。

Environment [string] #ResourceName
{
Name = [string]
[ Ensure = [string] { Absent | Present } ]
[ Path = [bool] ]
[ DependsOn = [string[]] ]
[ Value = [string] ]
}

引用: https://docs.microsoft.com/en-us/powershell/dsc/environmentresource

代码:@第 647 行

https://github.com/PowerShell/PSDscResources/blob/2c33e69634aa9c641ab27427d457fe9f49884e7c/DscResources/MSFT_EnvironmentResource/MSFT_EnvironmentResource.psm1#L647

关于powershell - 使用 Powershell DSC 刷新环境变量 {不工作}!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37150021/

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