我有一个名为SET_ENV.bat的批处理脚本,其中包含其他批处理脚本使用的环境变量。目前,这个SET_ENV.bat是由现有的批处理脚本启动的。
现在我需要使用Powershell脚本,并且我想启动相同的SET_ENV.bat。我成功地使用以下命令进行了操作:
cmd.exe /c ..\..\SET_ENV.bat
我知道批处理文件被运行了,因为它包含了一个echo命令
echo *** Set the environment variables for the processes ***
但是在查看环境变量后,我发现它们中没有一个被更新。是否有什么东西阻止我使用Powershell +批处理文件组合更新环境变量?
我已经尝试过直接从命令行运行SET_ENV.bat并且它有效。我也尝试了带有“-Verb runAs”的Start-Process cmdlet,但这没有任何好处。
[Environment]::SetEnvironmentVariable("TestVariableName", "My Value", "<Option>")
- Vivek Kumar Singh$Env:TestVariableName = 'MyValue'
。不需要过度复杂化事情。 - Joey