Xeн*_*вϵς 0 windows-registry powershell windows-10
我使用的是 Windows 10 20H2,我在 PowerShell 桌面 5.1.19041.610 和 PowerShell Core 7.1.1 上成功地多次重现了这个问题,没有失败。
问题:Test-Path 仅适用于两个 PowerShell 注册表驱动器(缩短的注册表配置单元名称):
HKCU: 和 HKLM:
它们分别是HKEY_CURRENT_USER和 的缩写HKEY_LOCAL_MACHINE。
在 PowerShell 中,它们的全名是:
Registry::HKEY_CURRENT_USER和Registry::HKEY_LOCAL_MACHINE分别。
但是,有五个注册表配置单元,另外三个是:
HKEY_CLASSES_ROOT,HKEY_CURRENT_CONFIG和HKEY_USERS
他们的简称:
HKCR:,HKCC:和HKU:
Test-Path找不到驱动器,但Test-Path如果提供全名,则可以找到它们:
TEST-PATH HKCR:
TEST-PATH HKCU:
TEST-PATH HKLM:
TEST-PATH HKU:
TEST-PATH HKCC:
TEST-PATH REGISTRY::HKEY_CLASSES_ROOT
TEST-PATH REGISTRY::HKEY_CURRENT_CONFIG
TEST-PATH REGISTRY::HKEY_USERS
$PSVersionTable
Run Code Online (Sandbox Code Playgroud)
我很好奇,我想知道它为什么会这样。
任何人都可以提供解释吗?
我已经确认其他三个驱动器也不适用于其他 cmdlet,我该如何使用这三个注册表驱动器?
默认情况下不会创建它们,但您可以创建它们:
PS C:\>New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT
Name Used (GB) Free (GB) Provider Root CurrentLocation
---- --------- --------- -------- ---- ---------------
HKCR Registry HKEY_CLASSES_ROOT
PS C:\>Test-Path HKCR:
True
PS C:>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
148 次 |
| 最近记录: |