Obtém o arquivo de script atual

4

Dentro de um script PS, como posso recuperar um objeto que represente ou aponte para o arquivo de script? Algo como get-currentscript.

O que eu realmente quero fazer é recuperar a criação do arquivo de script e / ou a hora da modificação. Presumivelmente isso seria recuperável do objeto do arquivo de script. É claro, eu também poderia usar uma especificação de arquivo antiga para o arquivo de script atual.

    
por Jamie Hanrahan 14.10.2017 / 20:48

1 resposta

6

Confira esta resposta em StackOverflow :

Enquanto a resposta atual está correta na maioria dos casos, há certas situações em que ela não fornecerá a resposta correta. Se você usar dentro de suas funções de script, então:

$MyInvocation.MyCommand.Name

Retorna o nome da função em vez do nome do nome do script.

function test { $MyInvocation.MyCommand.Name }

Irá dar-lhe "teste", independentemente do nome do seu script. O comando certo para obter o nome do script é sempre

$MyInvocation.ScriptName

isso retorna o caminho completo do script que você está executando. Se você precisar apenas do nome do arquivo de script, este código deve ajudá-lo:

split-path $MyInvocation.PSCommandPath -Leaf

    
por 14.10.2017 / 21:13

Tags