Obtient les modules qui ont été importés ou peuvent être importés dans la session active.
Syntaxe
Get-Module [-Tous] [-ListAvailable] [-Name <string[]>] [<CommonParameters>] Get-Module [[-Name] <string[]>] [<CommonParameters>]
Description
L'applet de commande Get-Module obtient les modules qui ont été importés ou peuvent être importés dans la session.
Get-Module permet d'obtenir les modules, mais pas de les importer. Pour importer les modules dans votre session, utilisez Import-Module.
Paramètres
-Tous
Obtient des objets de module pour tous les fichiers de module.
Sans le paramètre All, Get-Module obtient uniquement l'objet de module du fichier de module par défaut. L'applet de commande sélectionne les types de fichiers dans l'ordre suivant : fichiers manifestes (.psd1), fichiers de module de script (.psm1) et fichiers de module binaire (.dll).
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-ListAvailable
Obtient tous les modules qui peuvent être importés dans la session. Get-Module place les modules dans les chemins d'accès spécifiés par la variable d'environnement $env:PSModulePath.
Sans ce paramètre, Get-Module obtient uniquement les modules importés dans la session.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-Name <string[]>
Obtient uniquement les modules ayant les noms ou modèles de nom spécifiés. Les caractères génériques sont autorisés. Vous pouvez également diriger les noms vers Get-Module.
Obligatoire ? |
false |
Position ? |
1 |
Valeur par défaut |
All imported or available modules. |
Accepter l'entrée de pipeline ? |
true (ByValue) |
Accepter les caractères génériques ? |
true |
<CommonParameters>
Cette applet de commande prend en charge les paramètres courants : -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer et -OutVariable. Pour plus d'informations, consultez about_Commonparameters.
Entrées et sorties
Le type d'entrée est le type des objets que vous pouvez diriger vers l'applet de commande. Le type de retour est le type des objets que l'applet de commande retourne.
Entrées |
System.String Vous pouvez diriger les noms de modules vers Get-Module. |
Sorties |
System.Management.Automation.PSModuleInfo Get-Module retourne les objets qui représentent les modules. |
Remarques
Vous pouvez également faire référence à Get-Module par son alias, « gmo ». Pour plus d'informations, consultez about_Aliases.
Le paramètre All retourne des objets de module pour tous les fichiers comportant l'extension .dll, même s'ils n'implémentent pas des applets de commande ou des fournisseurs.
Exemple 1
C:\PS>get-module Description ----------- Cette commande obtient les modules importés dans la session active.
Exemple 2
C:\PS>get-module -listAvailable Description ----------- Cette commande obtient les modules qui peuvent être importés dans la session active. Get-Module recherche des modules disponibles dans le chemin d'accès spécifié par la variable d'environnement $env:PSModulePath. Pour plus d'informations sur PSModulePath, consultez about_Modules et about_Environment_Variables.
Exemple 3
C:\PS>get-module -listAvailable -all Description ----------- Cette commande obtient tous les fichiers exportés pour tous les modules disponibles.
Exemple 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;} Description ----------- Cette commande obtient les propriétés de l'objet PSModuleInfo que Get-Module retourne. Il y a un objet pour chaque fichier module. Vous pouvez utiliser les propriétés pour mettre en forme et filtrer les objets de module. Pour plus d'informations sur les propriétés, consultez « Propriétés PSModule » (page éventuellement en anglais) dans la bibliothèque MSDN (Microsoft Developer Network) à l'adresse https://go.microsoft.com/fwlink/?LinkId=143624.
Exemple 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 Description ----------- Cette commande obtient tous les fichiers de module (importés et disponibles) et les regroupe par nom de module. Cela vous permet de consulter les fichiers de module que chaque script exporte.
Exemple 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" } Description ----------- Ces commandes affichent le contenu du manifeste de module pour le module Windows PowerShell File Transfer. La première commande obtient l'objet PSModuleInfo qui représente le manifeste de module pour le module File Transfer. Il enregistre l'objet dans la variable $m. La deuxième commande utilise la notation par points pour décrire le chemin d'accès au fichier manifeste stocké dans la propriété Path de l'objet. Ensuite, elle utilise l'applet de commande Get-Content pour obtenir le contenu du fichier manifeste dans le chemin d'accès spécifié. Les modules ne doivent pas nécessairement comporter des fichiers manifestes. Lorsqu'ils en comportent un, le manifeste est requis uniquement pour inclure un numéro de version. Toutefois, les fichiers manifestes fournissent souvent les informations utiles sur un module, ses exigences et son contenu.
Exemple 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 : Description ----------- Cette commande affiche toutes les propriétés du module FileTransfer dans une liste. Parce que le module n'a pas encore été importé dans la session, les propriétés Exported* et la propriété NestedModules ne sont pas encore remplies. Ces propriétés sont remplies uniquement une fois que les éléments ont été exportés et que les modules imbriqués ont été instanciés.
Exemple 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 Description ----------- Cette commande répertorie les fichiers contenus dans le répertoire du module. C'est une autre façon de déterminer ce que contient un module avant de l'importer. Certains modules peuvent contenir des fichiers d'aide ou des fichiers ReadMe qui le décrivent.
Voir aussi