Ottiene i moduli importati o che possono essere importati nella sessione corrente.

Sintassi

Get-Module [-Tutti] [-ListAvailable] [-Name <string[]>] [<CommonParameters>]

Get-Module [[-Name] <string[]>] [<CommonParameters>]

Descrizione

Il cmdlet Get-Module ottiene i moduli importati o che possono essere importati nella sessione corrente.

Get-Module non importa i moduli; li ottiene soltanto. Per importare i moduli nella sessione, utilizzare Import-Module.

Parametri

-Tutti

Ottiene gli oggetti modulo per tutti i file di modulo.

Senza il parametro All, Get-Module ottiene solo l'oggetto modulo per il file di modulo predefinito. Il cmdlet seleziona i tipi di file nell'ordine seguente: file manifesto (psd1), file modulo di script (psm1) e file modulo binari (dll).

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-ListAvailable

Ottiene tutti i moduli che possono essere importati nella sessione. Get-Module ottiene i moduli dei percorsi specificati dalla variabile di ambiente $env:PSModulePath.

Senza questo parametro, Get-Module ottiene solo i moduli importati nella sessione.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Name <string[]>

Ottiene solo i moduli con i modelli di nome o i nomi specificati. È consentito l'utilizzo di caratteri jolly. È inoltre possibile reindirizzare i nomi a Get-Module.

Obbligatorio?

false

Posizione?

1

Valore predefinito

All imported or available modules.

Accettare input da pipeline?

true (ByValue)

Accettare caratteri jolly?

true

<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

System.String

È possibile reindirizzare i nomi dei moduli a Get-Module.

Output

System.Management.Automation.PSModuleInfo

Get-Module restituisce oggetti che rappresentano i moduli.

Note

È anche possibile fare riferimento a Get-Module tramite il relativo alias, "gmo". Per ulteriori informazioni, vedere about_Aliases.

Il parametro All restituisce oggetti modulo per tutti i file con estensione dll, anche se non implementano cmdlet o provider.

Esempio 1

C:\PS>get-module

Descrizione
-----------
Tramite questo comando vengono ottenuti i moduli importati nella sessione corrente.






Esempio 2

C:\PS>get-module -listAvailable

Descrizione
-----------
Tramite questo comando vengono ottenuti i moduli che possono essere importati nella sessione corrente.

Get-Module cerca i moduli disponibili nel percorso specificato dalla variabile di ambiente $env:PSModulePath. Per ulteriori informazioni su PSModulePath, vedere about_Modules e about_Environment_Variables.






Esempio 3

C:\PS>get-module -listAvailable -all

Descrizione
-----------
Tramite questo comando vengono ottenuti tutti i file esportati per tutti i moduli disponibili.






Esempio 4

C:\PS>get-module | get-member -type property

   TypeName: System.Management.Automation.PSModuleInfo

Name              MemberType Definition
----              ---------- ----------
AccessMode        Property   System.Management.Automation.ModuleAcc
Description       Property   System.String Description {get;set;}
ExportedAliases   Property   System.Collections.Generic.Dictionary`
ExportedCmdlets   Property   System.Collections.Generic.Dictionary`
ExportedFunctions Property   System.Collections.Generic.Dictionary`
ExportedVariables Property   System.Collections.Generic.Dictionary`
Guid              Property   System.Guid Guid {get;}
ModuleBase        Property   System.String ModuleBase {get;}
ModuleType        Property   System.Management.Automation.ModuleTyp
Name              Property   System.String Name {get;}
NestedModules     Property   System.Collections.ObjectModel.ReadOnl
OnRemove          Property   System.Management.Automation.ScriptBlo
Path              Property   System.String Path {get;}
PrivateData       Property   System.Object PrivateData {get;set;}
SessionState      Property   System.Management.Automation.SessionSt
Version           Property   System.Version Version {get;}

Descrizione
-----------
Tramite questo comando vengono ottenute le proprietà dell'oggetto PSModuleInfo restituito da Get-Module. È presente un oggetto per ogni file di modulo.

È possibile utilizzare le proprietà per formattare e filtrare gli oggetti modulo. Per ulteriori informazioni sulle proprietà, vedere l'argomento relativo alle proprietà PSModule in MSDN Library all'indirizzo https://go.microsoft.com/fwlink/?LinkId=143624 (le informazioni potrebbero essere in lingua inglese).






Esempio 5

C:\PS>get-module -listAvailable -all | format-table -property name, moduletype, path -groupby name -auto

   Name: MyTestCmdlets

Name          ModuleType Path
----          ---------- ----
MyTestCmdlets     Script C:\Windows\system32\WindowsPowerShell\v1.0\Modules\TestCmdlets\TestCmdlets.dll


   Name: PSDiagnostics

Name          ModuleType Path
----          ---------- ----
PSDiagnostics   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\PSDiagnostics\PSDiagnostics.psd1
PSDiagnostics     Script C:\Windows\system32\WindowsPowerShell\v1.0\Modules\PSDiagnostics\PSDiagnostics.psm1


   Name: FileTransfer

Name         ModuleType Path
----         ---------- ----
FileTransfer   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer\FileTransfer.psd1

Descrizione
-----------
Tramite questo comando vengono ottenuti tutti i file di modulo (importati e disponibili) e successivamente vengono raggruppati in base al nome del modulo. In questo modo è possibile visualizzare i file di modulo che ogni script sta esportando.






Esempio 6

C:\PS>$m = get-module -list -name FileTransfer | where {$_.moduletype -eq "Manifest"}

C:\PS> get-content $m.path

@{
GUID="{8FA5064B-8479-4c5c-86EA-0D311FE48875}"
Author="Microsoft Corporation"
CompanyName="Microsoft Corporation"
Copyright="© Microsoft Corporation. All rights reserved."
ModuleVersion="1.0.0.0"
Description="Windows Powershell File Transfer Module"
PowerShellVersion="2.0"
CLRVersion="2.0"
NestedModules="Microsoft.BackgroundIntelligentTransfer.Management"
FormatsToProcess="FileTransfer.Format.ps1xml"
RequiredAssemblies=Join-Path $psScriptRoot "Microsoft.BackgroundIntelligentTransfer.Management.Interop.dll"
}

Descrizione
-----------
Tramite questi comandi viene visualizzato il contenuto del manifesto del modulo File Transfer di Windows PowerShell.

Con il primo comando viene ottenuto l'oggetto PSModuleInfo che rappresenta il manifesto del modulo File Transfer. L'oggetto viene salvato nella variabile $m.

Nel secondo comando viene utilizzata la notazione con punto per ottenere il percorso al file manifesto, archiviato nella proprietà Path dell'oggetto. Successivamente viene utilizzato il cmdlet Get-Content per ottenere il contenuto del file manifesto nel percorso specificato.

Non è necessario che i moduli dispongano di file manifesto. In tal caso, un manifesto è necessario solo per includere un numero di versione. Tuttavia, i file manifesto spesso forniscono informazioni utili su un modulo, sui suoi requisiti e sul suo contenuto.






Esempio 7

C:\PS>get-module -listAvailable  -name FileTransfer | format-list -property *

Name              : FileTransfer
Path              : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer\FileTransfer.psd1
Description       : Powershell File Transfer Module
Guid              : 8fa5064b-8479-4c5c-86ea-0d311fe48875
ModuleBase        : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer
PrivateData       :
Version           : 1.0.0.0
ModuleType        : Manifest
AccessMode        : ReadWrite
ExportedFunctions : {}
ExportedCmdlets   : {}
NestedModules     : {}
ExportedVariables : {}
ExportedAliases   : {}
SessionState      : System.Management.Automation.SessionState
OnRemove          :

Descrizione
-----------
Tramite questo comando tutte le proprietà del modulo FileTransfer vengono visualizzate in un elenco. 

Poiché il modulo non è stato ancora importato nella sessione, le proprietà Exported* e la proprietà NestedModules non sono ancora definite. Queste proprietà vengono definite solo dopo l'esportazione degli elementi e la creazione delle istanze dei moduli nidificati.






Esempio 8

C:\PS>dir (get-module -listavailable FileTransfer).modulebase

    Directory: C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer


Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----        12/16/2008  12:36 PM            en-US
-a---        11/19/2008  11:30 PM      16184 FileTransfer.Format.ps1xml
-a---        11/20/2008  11:30 PM       1044 FileTransfer.psd1
-a---        12/16/2008  12:20 AM     108544 Microsoft.BackgroundIntelligentTransfer.Management.Interop.dll

Descrizione
-----------
Tramite questo comando vengono elencati i file nella directory del modulo. Si tratta di un'altra modalità per determinare ciò che si trova in un modulo prima di importarlo. Alcuni moduli potrebbero disporre di file della Guida o di file ReadMe che descrivono il modulo.






Vedere anche




Argomenti della Guida