Chargement de fonctions personnalisées dans Powershell
J'ai quelques fonctions supplémentaires que j'ai définies dans un fichier de script Powershell supplémentaire, que j'essaie de charger dans un fichier .ps1 principal. Cependant, quand j'appelle le fichier. ps1 à partir de L'invite Powershell, il ne semble pas fonctionner à travers ces commandes.
Dans l'exemple de code suivant, build_functions. ps1 a un code qui définit diverses fonctions personnalisées. Si je lance le fichier séparément (par exemple, en l'exécutant par lui-même, puis en exécutant le script principal), cela fonctionne bien. Build_builddefs. ps1 contient un certain nombre de variables qui doivent également être remplies avant d'exécuter le script principal.
Au début de mon script principal, j'ai ceci:
.build_functions.ps1
.build_builddefs.ps1
Cependant, ceux-ci ne semblent pas être exécutés car le script principal échoue lorsqu'il essaie d'exécuter la première fonction personnalisée. Ce que je fais mal?
2 réponses
Vous devez dot source
eux:
. .\build_funtions.ps1
. .\build_builddefs.ps1
Notez l'extra - .
Cet article heyscriptingguy
devrait être utile - http://blogs.technet.com/b/heyscriptingguy/archive/2010/08/10/how-to-reuse-windows-powershell-functions-in-scripts.aspx
J'ai continué à l'utiliser tout ce temps
Import-module .\build_functions.ps1 -Force