系统驱动器列表
list of system drives
我的系统有多个引导分区(C 和 D)。在这个系统上,我还有一些其他的数据卷。无论如何我可以使用 power shell 检索所有系统分区?我用谷歌搜索了解决方案,但找不到太多帮助。任何想法或起点都可能是一个很大的帮助
使用'Get-PSDrive',例如:
Get-PSDrive -PSProvider 'FileSystem'
您可以使用 Get-WmiObject -Class Win32_Volume
枚举卷。但是,BootVolume
属性 将仅指示 当前 引导卷。无法识别其他 Windows 安装的系统文件夹。
您可以检查其他分区上是否存在 Windows 文件夹或内核文件:
Get-WmiObject -Class Win32_Volume | ? {
$_.DriveLetter -and
(Test-Path -LiteralPath (Join-Path $_.Name 'Windows\system32\ntoskrnl.exe'))
} | select -Expand DriveLetter
但是请注意,此检查要求其他卷实际分配有驱动器盘符,如果有人在驱动器上创建虚假文件 \Windows\system32\ntoskrnl.exe
,则很容易被愚弄。
我的系统有多个引导分区(C 和 D)。在这个系统上,我还有一些其他的数据卷。无论如何我可以使用 power shell 检索所有系统分区?我用谷歌搜索了解决方案,但找不到太多帮助。任何想法或起点都可能是一个很大的帮助
使用'Get-PSDrive',例如:
Get-PSDrive -PSProvider 'FileSystem'
您可以使用 Get-WmiObject -Class Win32_Volume
枚举卷。但是,BootVolume
属性 将仅指示 当前 引导卷。无法识别其他 Windows 安装的系统文件夹。
您可以检查其他分区上是否存在 Windows 文件夹或内核文件:
Get-WmiObject -Class Win32_Volume | ? {
$_.DriveLetter -and
(Test-Path -LiteralPath (Join-Path $_.Name 'Windows\system32\ntoskrnl.exe'))
} | select -Expand DriveLetter
但是请注意,此检查要求其他卷实际分配有驱动器盘符,如果有人在驱动器上创建虚假文件 \Windows\system32\ntoskrnl.exe
,则很容易被愚弄。