PowerShell : récupérer le chemin d'accès au script en cours d'execution
Tant que j'y suis, voici une petite astuce sous PowerShell, toute bête mais quand on ne connait pas, on cherche :-) (surtout si on n'a aucun accès au net à ce moment là :p)
Durant l'execution d'un script, le répertoire courant n'est pas forcément celui dans lequel est situé ce script.
Du coup, si vous souhaitez travailler en "relatif", par exemple pour lancer d'autres scripts, vous souhaitez sans doute pouvoir déterminer ce fameux répertoire afin de batir correctement des chemins d'accès complets.
La réponse se trouve dans la variable $MyInvocation, qui comporte notamment une propriété MyCommand.
Si le code executé se trouve dans un script, alors $MyInvocation.MyCommand.CommandType vaudra ExternalScript.
Ce qui veut aussi dire que MyCommand est en fait à ce moment là une instance de ExternalScriptInfo, dont la propriété Path donne le chemin d'accès au fichier ps1.
Voilà, vous avez votre réponse : $MyInvocation.MyCommand.Path.
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :