【发布时间】:2021-01-16 08:08:28
【问题描述】:
我试图在我的代码中保持一致,使用$env: 或[Environment],但不是混合使用。但是,我看到似乎实施的内容有些不一致。
所以[Environment]::UserName 和$env:userName 都可以正常工作。 $env:computerName 有效,但 [Environment]::COMPUTERNAME 无效。奇怪的是 [Environment]::MachineName 确实存在,尽管 [Environment]::GetEnvironmentVariables() 说 [Environment]::COMPUTERNAME 存在,而不是 [Environment]::MachineName。此外,[Environment]::GetEnvironmentVariables() 说 [Environment]::USERPROFILE 应该可以工作,但它实际上什么也没返回。
当我查看有关[Environment] 类型属性的Microsoft 文档here 时,我确实看到了MachineName,以及UserName,但没有提到UserProfile。所以,显然这是正确的资源。但这引出了一个问题,为什么[Environment]::GetEnvironmentVariables() 会返回如此不一致的信息?
【问题讨论】:
标签: powershell environment-variables