Y a-t-il un moyen de dire si un disque a une partition GPT ou une partition MBR avec PowerShell? P>
4 Réponses :
Non. PowerShell n'a pas de commandes intégrées indigènes pour cela. PowerShell, comme son nom l'indique, est une coquille. Il est livré avec un bon ensemble de cmdlets génériques utiles, mais une spécialisation comme celle-ci est laissée à des commandes natives externes (telles que DiskPart), des modules et / ou des maigres. P>
Puisque vous allez toujours trouver DISKPART.EXE où vous trouvez PowerShell, utilisez cela. P>
Si vous avez l'intention d'utiliser Powershell seul, alors peut-être que WMI pourrait vous aider. Jetez un coup d'œil à la sortie de: p>
-oisin p> PS> GWMI Win32_Partition | % {$ _ | fl *} code> p>
Je regardais les appels de bibliothèque WMI ou .NET. Je verrai sur l'analyse de la sortie de diskpart.exe
Jetez un coup d'œil à la sortie de: GWMI Win32_Partition | % {$ _ | fl *}
Je pense que cette réponse est techniquement i> correcte, mais cela manque le but de la question. Je suggérerais d'intégrer votre commentaire dans votre réponse.
Cette réponse n'est plus techniquement correcte, car PowerShell dispose de disque de disque à partir de Windows 8 / Windows Server 2012.
Utilisation de WMI
$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 "*"}}
Pour savoir si un disque a un MBR ou un GPT, c'est très facile ..
Démarrer PowerShell. Courir..
Diskpart, appuyez sur Entrée, exécutez ..
Disque de liste, appuyez sur Entrée. Voici la sortie de mon ordinateur: Vous obtiendrez une entrée Oui, je pense em> !, pour DYN ou GPT Si votre disque est dynamique ou que le type de table de partition est GPT respectivement.
J'ai cherché un peu de temps et assez suffit à mes besoins. Pour comparer la sortie du script par JOSH à l'aide de WMI, voici la sortie .. p>
Si vous avez GPT, votre sortie sur Windows 10 PowerShell 5.x ressemblera à: DiskPart> Liste Disque de disque ### Taille du statut Dyn GPT --------- - --------- ------- -------- Disque 0 Online 238 GB 0 b *
Si vous êtes sur Windows 8, Windows Server 2012 ou plus récent, vous pouvez utiliser l'une des cmdlets de stockage pour vérifier ceci: la sortie de cette commande sera formatée comme : p> Notez que la colonne la plus à droite indique le style de partition, qui est la pièce de données que vous recherchez. p> Si vous êtes sous Windows 7 , Windows Server 2008 R2, ou plus ancien, vous devez utiliser DiskPart ou WMI pour obtenir ces informations. Je préfère utiliser DiskPart. Tapez p> suivi de p> la sortie ressemblera à: p> Notez que le disque 0 et 1 sont les deux disques GPT, et ils ont un astérisque dans la colonne appropriée. P> P>
Dans une expression: (get-disk -number 0) .PartitionStyle -eq 'MBR' code>,
(get-Disk -Number 0) .PartitionStyle -eq 'gpt' code>