Dans mes scripts VBS, j’ai l’habitude d’initialiser une variable pour localiser mon script. Comme ça, si je dois le déplacer, je ne me préoccupe pas des divers chemins pour localiser mon fichier de log ou de source qui y est associé (à condition de les déplacer avec …). Pour info, la commande est la suivante :
strMyPath = Left(Wscript.ScriptFullName,InStrRev(Wscript.ScriptFullName, "\"))
Dans mes scripts PoSH, je cherchais une solution similaire mais “Wscript.ScriptFullName” n’existe pas et n’a (semble t-il) pas d’équivalent. La ruse consiste donc à utiliser la propriété “CurrentDirectory” de l’objet “Shell” …
$MyPath = ($WShell = New-Object -ComObject Wscript.Shell).CurrentDirectory
Et, pour un peu, c’est presque plus simple !