使用Powershell检测GPT和MBR分区

Jos*_*osh 4 powershell mbr guid-partition-table

有没有办法判断磁盘是否有带PowerShell的GPT或MBR分区?

Jos*_*osh 8

使用WMI

gwmi -query "Select * from Win32_DiskPartition WHERE Index = 0" | Select-Object DiskIndex, @{Name="GPT";Expression={$_.Type.StartsWith("GPT")}}
Run Code Online (Sandbox Code Playgroud)

使用Diskpart

$a = "list disk" | diskpart
$m = [String]::Join("`n", $a) | Select-String -Pattern "Disk (\d+).{43}(.)" -AllMatches
$m.Matches | Select-Object @{Name="DiskIndex";Expression={$_.Groups[1].Value}}, @{Name="GPT";Expression={$_.Groups[2].Value -eq "*"}}
Run Code Online (Sandbox Code Playgroud)


Fra*_*iak 7

如果您使用的是Windows 8,Windows Server 2012或更高版本,则可以使用其中一个存储cmdlet来检查:

Get-Disk
Run Code Online (Sandbox Code Playgroud)

此命令的输出格式如下:

PS C:\> Get-Disk

Number Friendly Name                            OperationalStatus                    Total Size Partition Style
------ -------------                            -----------------                    ---------- ---------------
0      Microsoft Virtual Disk                   Online                                    42 GB GPT
1      Microsoft Virtual Disk                   Online                                     1 GB GPT
2      Microsoft Virtual Disk                   Offline                                    2 GB RAW
3      Microsoft Virtual Disk                   Offline                                    3 GB RAW
Run Code Online (Sandbox Code Playgroud)

请注意,最右边的列表示分区样式,这是您要搜索的数据.

如果您使用的是Windows 7,Windows Server 2008 R2或更早版本,则应使用diskpart或WMI获取此信息.我更喜欢使用diskpart.类型

diskpart
Run Code Online (Sandbox Code Playgroud)

其次是

list disk
Run Code Online (Sandbox Code Playgroud)

输出结果如下:

PS C:\> diskpart

Microsoft DiskPart version 6.3.9600

Copyright (C) 1999-2013 Microsoft Corporation.
On computer: WIN-BN8G3VMNQ9T

DISKPART> list disk

  Disk ###  Status         Size     Free     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  Disk 0    Online           42 GB      0 B        *
  Disk 1    Online         1024 MB   991 MB        *
  Disk 2    Offline        2048 MB  2048 MB
  Disk 3    Offline        3072 MB  3072 MB
Run Code Online (Sandbox Code Playgroud)

请注意,磁盘0和1都是GPT磁盘,并且在相应的列中有星号.