Outils pour utilisateurs

Outils du site


dev:powershell:ecrire_un_module_powershell

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
dev:powershell:ecrire_un_module_powershell [2023/08/23 13:57] yoanndev:powershell:ecrire_un_module_powershell [2023/08/27 12:25] (Version actuelle) yoann
Ligne 29: Ligne 29:
    Description = "a module short description"    Description = "a module short description"
    PowerShellVersion = '5.1'    PowerShellVersion = '5.1'
-   FunctionsToExport = "aFunction1", "aFunction2", "aFunction3"+   FunctionsToExport = @("aFunction1", "aFunction2", "aFunction3")
    CmdletsToExport = @()    CmdletsToExport = @()
    AliasesToExport = @()    AliasesToExport = @()
 +   VariablesToExport = @('$aVarName1', '$aVarName2')
 } }
  
Ligne 49: Ligne 50:
 </code> </code>
  
-===== Chargement du module =====+===== Sélection des objets à exporter ===== 
 + 
 +Fonctions, alias et variables doivent être sélectionnés pour être exportés : 
 +  * Depuis le script ; 
 +  * Depuis le fichier manifest. 
 + 
 + 
 +Dans le script on utilise la cmdlet **Export-ModuleMember** 
 + 
 +<code powershell> 
 +Export-ModuleMember -Function Get-Test, New-Test, Start-Test -Alias gtt, ntt, stt -Variable aVarName 
 +</code> 
 + 
 +Depuis la table de hachage du fichier manifest, on renseigne la valeur de la clé **VariablesToExport** 
 + 
 +<code powershell> 
 +@{ 
 +  # Par défaut toutes les variables sont exportés. Ici on définit 
 +  # Précisément les variables qu'on souhaite exporter. 
 +  VariablesToExport = @('$aVarName1', '$aVarName2'
 +}  
 +</code> 
 + 
 + 
 +===== Charger le module =====
  
 Pour charger le module dans la session active :  Pour charger le module dans la session active : 
Ligne 58: Ligne 83:
 Ce chargement dynamique est éphémère et ne concerne que le shell en cours d'exécution. Pour que le module soit chargé automatiquement lors du lancement de Powershell, il doit être installé voir la note . Ce chargement dynamique est éphémère et ne concerne que le shell en cours d'exécution. Pour que le module soit chargé automatiquement lors du lancement de Powershell, il doit être installé voir la note .
  
 +===== Décharger le module =====
 +
 +<code powershell>
 +Remove-Module aModuleName
 +</code>
  
 ===== Obtenir la version depuis le module ===== ===== Obtenir la version depuis le module =====
dev/powershell/ecrire_un_module_powershell.1692799075.txt.gz · Dernière modification : 2023/08/23 13:57 de yoann