$env:tmp
[Environment]::GetEnvironmentVariable('tmp', 'User')
(get-item hkcu:\Environment).GetValue('tmp')
以上所有PowerShell代码段都会返回C:\Users\Roman\AppData\Local\Temp
值。我知道该值应为%USERPROFILE%\AppData\Local\Temp
(我可以在regedit和Environment Variables窗口中看到)。
我需要知道'原创',但不是'已解决'的价值。如何在PowerShell中读取此值?
感谢。
答案 0 :(得分:5)
最后,我找到了一个适合我的解决方案:
(get-item hkcu:\Environment).GetValue('tmp', $null, 'DoNotExpandEnvironmentNames')
在编写了以下PowerShell / C#代码之后,我发现了这个GetValue重载:
$reg = [Microsoft.Win32.Registry]::CurrentUser.OpenSubKey("Environment", $true);
$val = $reg.GetValue('tmp', $null, [Microsoft.Win32.RegistryValueOptions]::DoNotExpandEnvironmentNames)
$val
$reg.Close()