Liste de tous les périphériques, partitions et volumes dans Powershell

j'ai plusieurs volumes (comme presque tout le monde de nos jours): sur Windows ils finissent par être spécifiés en C:, D: et ainsi de suite. Comment puis-je les lister sur une machine Unix avec "ls /mnt/" avec Powershell?

32
demandé sur wishi 2009-11-02 23:42:18

8 réponses

Pour obtenir tous les système de fichiers des disques, vous pouvez utiliser la commande suivante:

gdr -PSProvider 'FileSystem'

gdr est un alias pour Get-PSDrive, qui inclut tous les "disques virtuels" pour le registre, etc.

55
répondu bdukes 2013-01-08 20:05:12

Get-Volume

vous obtiendrez: DriveLetter, FileSystemLabel, FileSystem, DriveType, HealthStatus, SizeRemaining et Size

9
répondu Vladimir Valchev 2013-10-24 20:22:50

Sur Windows Powershell:

Get-PSDrive 
[System.IO.DriveInfo]::getdrives()
wmic diskdrive
wmic volume

aussi l'utilitaire dskwipe:http://smithii.com/dskwipe

dskwipe.exe -l
7
répondu Bill the Lizard 2012-08-22 15:49:54

tout D'abord, sur Unix vous utilisez mount, pas ls /mnt: beaucoup de choses ne sont pas montés dans /mnt.

de toute façon, il y a le mountvol la commande DOS, qui continue à fonctionner en Powershell, et il y a la commande spécifique à la Powershell Get-PSDrive.

4
répondu ephemient 2009-11-02 20:52:25

C'est assez vieux, mais je trouve intéressant de noter:

PS N:\> (measure-command {Get-WmiObject -Class Win32_LogicalDisk|select -property deviceid|%{$_.deviceid}|out-host}).totalmilliseconds
...
928.7403
PS N:\> (measure-command {gdr -psprovider 'filesystem'|%{$_.name}|out-host}).totalmilliseconds
...
169.474

sans propriétés de filtrage, sur mon système d'essai, 4319.4196 ms à 1777.7237 ms. Sauf si j'ai besoin d'un objet PS-Drive retourné, je vais rester avec WMI.

modifier: Je pense que nous avons un gagnant: PS N:> (mesure-commande {[Système.IO.DriveInfo]::getdrives()|%{$_.nom}|accueil}).totalmilliseconds 110.9819

2
répondu Yevgeniy 2017-08-04 21:00:14

bien que ce ne soit pas spécifique à "powershell"... vous pouvez facilement lister les lecteurs et les partitions en utilisant diskpart, le volume de liste

PS C:\Dev> diskpart

Microsoft DiskPart version 6.1.7601
Copyright (C) 1999-2008 Microsoft Corporation.
On computer: Box

DISKPART> list volume

Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
----------  ---  -----------  -----  ----------  -------  ---------  --------
Volume 0     D                       DVD-ROM         0 B  No Media
Volume 1         C = System   NTFS   Partition    100 MB  Healthy    System
Volume 2     G   C = Box      NTFS   Partition    244 GB  Healthy    Boot
Volume 3     H   D = Data     NTFS   Partition    687 GB  Healthy
Volume 4     E   System Rese  NTFS   Partition    100 MB  Healthy
1
répondu Eddie B 2014-06-09 20:56:58

alt text

fonction PS:> get-psdrive

0
répondu streetparade 2017-02-08 14:16:52

nous avons plusieurs volumes par lecteur (certains sont montés sur des sous-répertoires sur le lecteur). Ce code affiche une liste des points de montage et des étiquettes de volume. Évidemment, vous pouvez aussi extraire l'espace libre et ainsi de suite:

gwmi win32_volume|where-object {$_.filesystem -match "ntfs"}|sort {$_.name} |foreach-object {
  echo "$(echo $_.name) [$(echo $_.label)]"
}
0
répondu Patrick 2015-03-26 13:37:50