2 votes

Comment puis-je extraire mon $Profile d'une fonction Powershell ?

J'aime faire beaucoup de changements dans mon fichier $profile. Après avoir sauvegardé une modification, je voudrais sourcer le fichier en utilisant un alias "sop". Voici comment j'espère y parvenir :

set-alias sop Source-Profile
function Source-Profile {
    . $profile
}

Cette fonction n'entraîne aucune erreur, elle semble donc fonctionner. Toutefois, lorsque j'apporte des modifications à mon fichier $profile, cette fonction ne semble rien faire. Je dois toujours taper . $profile à partir de l'invite PS pour réévaluer ce fichier. Et c'est bien, mais c'est une petite douleur. Je préfèrerais utiliser un alias pour obtenir ce fichier.

Qu'est-ce que je rate ici ?

2voto

Marcel Jackwerth Points 101

Le dot-sourcing d'un fichier l'exécute dans la portée actuelle (plutôt que dans sa propre portée). Pour sourcer un fichier dans une fonction et faire en sorte que les définitions du fichier soient incluses dans la portée de l'appel, vous devez sourcer la fonction. Essayez ceci :

. sop

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X