Ottiene le unità di Windows PowerShell disponibili nella sessione corrente.

Sintassi

Get-PSDrive [-LiteralName] <string[]> [-PSProvider <string[]>] [-Scope <string>] [-UseTransaction] [<CommonParameters>]

Get-PSDrive [[-Name] <string[]>] [-PSProvider <string[]>] [-Scope <string>] [-UseTransaction] [<CommonParameters>]

Descrizione

Il cmdlet Get-PSDrive ottiene le unità di Windows PowerShell disponibili nella sessione corrente. È possibile ottenere un'unità specifica o tutte le unità nella console.

Get-PSDrive ottiene le unità seguenti:

-- Unità logiche di Windows nel computer, incluse le unità mappate a condivisioni di rete.

-- Unità esposte dai provider di Windows PowerShell, ad esempio le unità Certificate:, Function: e Alias:, e le unità HKLM: e HKCU: esposte dal provider Registry di Windows PowerShell.

-- Unità create dall'utente mediante New-PSDrive.

Get-PSDrive non ottiene le unità di Windows mappate aggiunte o create dopo l'apertura della console Windows PowerShell.

Parametri

-LiteralName <string[]>

Specifica il nome dell'unità di Windows PowerShell.

Il valore di LiteralName viene utilizzato così come viene digitato. Nessun carattere viene interpretato come carattere jolly. Se il nome include caratteri di escape, è necessario racchiuderli tra virgolette singole tramite le quali si comunica a Windows PowerShell di non interpretare alcun carattere come sequenza di escape.

Obbligatorio?

true

Posizione?

1

Valore predefinito

Accettare input da pipeline?

true (ByPropertyName)

Accettare caratteri jolly?

false

-Name <string[]>

Ottiene solo le unità specificate. Digitare il nome unità o la lettera senza due punti (:).

Obbligatorio?

false

Posizione?

1

Valore predefinito

Accettare input da pipeline?

true (ByPropertyName)

Accettare caratteri jolly?

false

-PSProvider <string[]>

Ottiene solo le unità supportate dal provider di Windows PowerShell specificato. Digitare il nome di un provider, ad esempio FileSystem, Registry o Certificate.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

true (ByPropertyName)

Accettare caratteri jolly?

false

-Scope <string>

Ottiene le unità di Windows PowerShell nell'ambito specificato. I valori validi sono "Global", "Local", "Script" oppure un numero relativo all'ambito corrente, ovvero da 0 al numero di ambiti, dove 0 corrisponde all'ambito corrente e 1 al relativo padre. Il valore predefinito è "Local". Per ulteriori informazioni, vedere about_Scopes.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

true (ByPropertyName)

Accettare caratteri jolly?

false

-UseTransaction

Include il comando nella transazione attiva. Questo parametro è valido solo quando è in corso una transazione. Per ulteriori informazioni, vedere about_Transactions.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

<CommonParameters>

Questo cmdlet supporta i parametri comuni -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per ulteriori informazioni, vedere about_Commonparameters.

Input e output

Il tipo di input è il tipo degli oggetti che è possibile reindirizzare al cmdlet. Il tipo restituito è il tipo degli oggetti restituiti dal cmdlet.

Input

Nessuno

Non è possibile reindirizzare oggetti a Get-PSDrive.

Output

System.Management.Automation.PSDriveInfo

Get-PSDrive restituisce oggetti che rappresentano le unità di Windows PowerShell disponibili nella sessione.

Note

Il cmdlet Get-PSDrive è progettato per l'utilizzo di dati esposti da qualsiasi provider. Per elencare i provider disponibili nella sessione, digitare "Get-PSProvider". Per ulteriori informazioni, vedere about_Providers.

Esempio 1

C:\PS>get-psdrive

Name       Provider      Root
----       --------      ----
Alias      Alias
C          FileSystem    C:\
cert       Certificate   \
D          FileSystem    D:\
Env        Environment
Function   Function
HKCU       Registry      HKEY_CURRENT_USER
HKLM       Registry      HKEY_LOCAL_MACHINE
Variable   Variable
X          FileSystem    X:\

Descrizione
-----------
Con questo comando vengono ottenute le unità di Windows PowerShell disponibili nella sessione corrente. 

L'output mostra il disco rigido (C:) e l'unità CD-ROM (D:) sul computer, le unità esposte dai provider di Windows PowerShell (Alias:, Cert:, Env:, Function:, HKCU:, HKLM: e Variable:) e un'unità di cui è stato eseguito il mapping a una condivisione di rete (X:).






Esempio 2

C:\PS>get-psdrive d

Name       Provider      Root
----       --------      ----
D          FileSystem    D:\

Descrizione
-----------
Con questo comando viene visualizzata l'unità D:. Notare che la lettera dell'unità non è seguita dai due punti.






Esempio 3

C:\PS>get-psdrive -psprovider filesystem

Name       Provider      Root
----       --------      ----
C          FileSystem    C:\
D          FileSystem    D:\
X          FileSystem    X:\
Y          FileSystem    \\Server01\Public
Z          FileSystem    C:\Windows\System32

Descrizione
-----------
Con questo comando vengono visualizzate tutte le unità supportate dal provider FileSystem di Windows PowerShell. Sono incluse unità fisse, partizioni logiche, unità di rete mappate e unità create tramite New-PSDrive mappate alle unità del file system.

In questo esempio viene illustrato che le unità create da New-PSDrive presentano il nome del percorso mappato nel valore della proprietà Root. Le unità di Windows presentano solo la radice della lettera di unità.






Esempio 4

C:\PS>if (!(get-psdrive X)) { 
    new-psdrive -name X -psprovider Registry -root HKLM:\Network 
}
else { write-host "The X: drive is already in use." }

Descrizione
-----------
Con questo comando viene controllato se l'unità X è già utilizzata come nome di unità di Windows PowerShell. In caso contrario, il comando utilizza il cmdlet New-PSDrive per creare un'unità di Windows PowerShell mappata alla chiave del Registro di sistema HKLM:\Network.






Esempio 5

C:\PS>get-psdrive -provider filesystem

C:\PS> get-psdrive -provider filesystem

Name       Provider      Root
----       --------      ----
C          FileSystem    C:\
D          FileSystem    D:\
X          FileSystem    X:\
Y          FileSystem    \\Server01\Public
Z          FileSystem    C:\Windows\System32

C:\PS> net use
New connections will be remembered.

Status       Local     Remote                    Network
-------------------------------------------------------------------------------
             X:        \\Server01\Public         Microsoft Windows Network


C:\PS> [System.IO.DriveInfo]::getdrives()

Name               : C:\
DriveType          : Fixed
DriveFormat        : NTFS
IsReady            : True
AvailableFreeSpace : 39831498752
TotalFreeSpace     : 39831498752
TotalSize          : 79900368896
RootDirectory      : C:\
VolumeLabel        :
Name               : D:\
DriveType          : CDRom
DriveFormat        :
IsReady            : False
AvailableFreeSpace :
TotalFreeSpace     :
TotalSize          :
RootDirectory      : D:\
VolumeLabel        :
Name               : X:\
DriveType          : Network
DriveFormat        : NTFS
IsReady            : True
AvailableFreeSpace : 36340559872
TotalFreeSpace     : 36340559872
TotalSize          : 36413280256
RootDirectory      : X:\
VolumeLabel        : D_Drive


C:\PS> get-wmiobject win32_logicaldisk

DeviceID     : C:
DriveType    : 3
ProviderName :
FreeSpace    : 39831252992
Size         : 79900368896
VolumeName   :
DeviceID     : D:
DriveType    : 5
ProviderName :
FreeSpace    :
Size         :
VolumeName   :
DeviceID     : X:
DriveType    : 4
ProviderName : \\server01\public
FreeSpace    : 36340559872
Size         : 36413280256
VolumeName   : D_Drive


C:\PS> get-wmiobject win32_networkconnection
LocalName                     RemoteName                    
--------------               ------------
x:                            \\server01\public

Descrizione
-----------
In questo esempio vengono confrontati i tipi di unità del file system visualizzati da Get-PSDrive con quelli visualizzati tramite gli altri metodi. Nell'esempio vengono illustrati diversi modi per visualizzare le unità in Windows PowerShell e viene indicato che le unità create tramite New-PSDrive sono accessibili solo in Windows PowerShell.

Nel primo comando viene utilizzato Get-PSDrive per ottenere tutte le unità del file system nella console Windows PowerShell. Sono incluse le unità fisse (C: e D:), l'unità di rete mappata (X:) e due unità di Windows PowerShell (Y: e Z:) create utilizzando New-PsDrive.

Un comando "net use", che visualizza le unità di rete mappate di Windows, visualizza solo l'unità X. Non visualizza le unità create da New-PSDrive. Mostra che l'unità X: è anche mappata a \\Server01\Public.

Nel terzo comando viene utilizzato il metodo GetDrives della classe System.IO.DriveInfo di Microsoft .NET Framework. Con questo comando vengono ottenute le unità di file system di Windows, inclusa l'unità X: ma non vengono ottenute le unità create da New-PSDrive.

Nel quarto comando viene utilizzato il cmdlet Get-WmiObject per visualizzare le istanze della classe Win32_LogicalDisk. Vengono restituite le unità C:, D: ed X: ma non le unità create da New-PSDrive.

Nell'ultimo comando viene utilizzato il cmdlet Get-WmiObject per visualizzare le istanze della classe Win32_NetworkConnection. Come "net use", restituisce solo l'unità X:.






Vedere anche




Argomenti della Guida