Следующий вопрос SO решает проблему (когда вы пытаетесь понять это из скрипта). Как получить текущий исполняемый файл PowerShell?
Как бы вы это сделали, если бы находились внутри функции.
Пример ниже работает вне определения функции, только не внутри.
echo ''
echo '******** outside function scope'
echo "Path: $($MyInvocation.MyCommand.Path)"
echo "Definition: $($MyInvocation.MyCommand.Definition)"
echo '*******************************'
echo ''
function myHelper()
{
echo '******** inside function scope'
#EMPTY
echo "Path: $($MyInvocation.MyCommand.Path)"
#Prints the string definition of the function itself
echo "Definition: $($MyInvocation.MyCommand.Definition)"
echo '******************************'
}
myHelper