Чтобы получить путь к программе с помощью PowerShell, вы можете использовать несколько методов. Вот несколько примеров:
Метод 1: использование автоматической переменной $MyInvocate
$scriptPath = $MyInvocation.MyCommand.Path
$programPath = Split-Path -Path $scriptPath -Parent
Write-Host $programPath
Метод 2: использование командлета Get-Variable
$programPath = (Get-Variable -Scope 1 -Name MyInvocation).Value.MyCommand.Path | Split-Path -Parent
Write-Host $programPath
Метод 3. Использование автоматической переменной $PSScriptRoot(доступно в PowerShell 3.0 и более поздних версиях)
$programPath = $PSScriptRoot
Write-Host $programPath
Метод 4. Использование командлета Get-Location
$programPath = (Get-Location).Path
Write-Host $programPath
Метод 5: использование командлета Split-Pathс автоматической переменной $PSCommandPath
$programPath = Split-Path -Path $PSCommandPath -Parent
Write-Host $programPath
Эти методы извлекают путь к программе несколько разными способами, но все они дают один и тот же результат. Выберите метод, который лучше всего соответствует вашим потребностям.