我想在powershell上编写一些脚本,它涉及在windows上使用环境变量
这是脚本的例子
test.ps1
setX number 456
echo $env:number
我发现$ env:number无法在PowerShell提示符的同一会话中立即更新。我需要重新打开powershell提示符。但是,这会破坏我的脚本 我怎样才能立即更新env变量?在linux中,使用EXPORT命令很容易,但对于Windows来说,这是一个危险......
答案 0 :(得分:2)
在PowerSell环境中,变量可通过提供程序获得。 provider
是一种对所有树容器进行操作的方法。看看:
Get-PSProvider
然后驱动器是使用这些提供程序的实体。看看
Get-PSDrive
您可以看到它存在一个名为env
您可以尝试:
Get-childItem env:
设置您可以编写的环境变量:
$ env:mavar =“TESTJPB”
要创建更多永久环境变量(即用户级或计算机级),您需要使用.NET Framework和SetEnvironmentVariable方法。例如,此命令创建名为TestVariable:
的用户级环境变量[Environment]::SetEnvironmentVariable("mavar", "TESTJPB", "User")
查看微软文章this。
答案 1 :(得分:1)
你试过吗
[environment]::setenvironmentvariable()