2010-10-01 60 views

回答

6

使用WMI

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

使用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 "*"}} 
0

否.PowerShell沒有任何本機內置命令。顧名思義,PowerShell就是一個shell。它配備了一組有用的通用命令,但像這樣的專門命令留給了外部原生命令(如diskpart),模塊和/或管理單元。

既然你總是要找到你找到powershell的diskpart.exe,那就使用它。

如果您打算單獨使用PowerShell,那麼WMI可能會提供幫助。看看輸出:

PS> gwmi win32_partition | % { $_ | fl * }

-Oisin

+0

我正在查看WMI或.net庫調用。我將看到關於解析diskpart的輸出。exe – Josh 2010-10-01 18:39:37

+1

看看輸出:gwmi win32_partition | %{$ _ | fl *} – x0n 2010-10-01 18:43:09

+3

我認爲這個答案在技術上是正確的,但它忽略了這個問題的目的。我會建議你的評論納入你的答案。 – vmrob 2015-06-23 21:44:58

0

要找出是否有任何磁盤有MBR或GPT這是很容易的。 啓動powershell。運行.. diskpart,按ENTER,運行.. 列表磁盤,按ENTER鍵。這裏是我的電腦的輸出:

Disk ### Status   Size  Free  Dyn Gpt 
-------- ------------- ------- ------- --- --- 
Disk 0 Online   232 GB 1024 KB 
Disk 1 Online   465 GB 1024 KB 
Disk 2 Online   3820 MB  0 B 

你會得到一個肯定的條目,我覺得,爲的Dyn或GPT,如果你的硬盤是動態的或分區表型分別爲GPT! 我搜索了一段時間,足夠我的目的。要比較使用WMI由Josh腳本的輸出,這裏是輸出..

DiskIndex          GPT 
---------          --- 
     0         False 
     1         False 
     2         False 
5

如果您使用的是Windows 8,Windows Server 2012中,或更高版本,那麼你可以使用存儲的cmdlet之一檢查此:

Get-Disk 

此命令的輸出將被格式化,如:

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 

注意,最右列指示的分區形式,這是你正在尋找的數據片。

如果您使用的是Windows 7,Windows Server 2008 R2或更早版本,則應使用diskpart或WMI來獲取此信息。我更喜歡使用diskpart。鍵入其次

list disk 

diskpart 

的輸出如下:

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 

注意磁盤0和1這兩個GPT磁盤,並且在適當的欄內星號。