如何获得64位的pshome路径?

时间:2017-02-07 13:09:19

标签: powershell

使用$PSHome变量(c:\Windows\System32\WindowsPowerShell\v1.0\)可以访问32位主文件夹的路径。

如何访问包含64位版本(c:\Windows\SysWOW64\WindowsPowerShell\v1.0\)路径的变量?

修改

正如Jeff Zeitlin在答案中解释的那样,这个问题无效......

2 个答案:

答案 0 :(得分:3)

你已经倒退 - 在64位Windows上,C:\WINDOWS\SYSTEM32用于64位内容; C:\WINDOWS\SYSWOW64用于32位内容。这是因为Microsoft选择创建“主”目录SYSTEM32以实现向后兼容;新的32位文件夹被称为SYSWOW64,作为“Windows-on-Windows64上的系统”的简写。

但是,要回答您的实际问题:如果您运行的是64位PowerShell,$PSHome指向64位主文件夹C:\WINDOWS\System32\WindowsPowerShell\v1.0\;如果您运行的是32位PowerShell(“Windows Powershell(x86)”),$PSHome将指向C:\WINDOWS\SYSWOW64\WindowsPowerShell\v1.0\。我不确定是否有办法获得相当于$PSHome-for-the-other-bittedness

答案 1 :(得分:0)

这取决于您是否运行了32位或64位版本的PowerShell!

32位

C:\Windows\SysWOW64\WindowsPowerShell\v1.0

32-bit PowerShell $PSHome

64位

C:\Windows\System32\WindowsPowerShell\v1.0

64-bit PowerShell $PSHome

检测64位模式

使用此代码确定您是否以64位模式运行!

[Environment]::Is64BitProcess