PowerShell中获取当前运行脚本路径
在PowerShell中,获取当前运行脚本的路径可以使用以下几种方法:
$PSScriptRoot
$PSScriptRoot
是一个自动变量,它包含了当前运行脚本的目录路径。这个变量在PowerShell 3.0及以上版本中可用。
$scriptPath = $PSScriptRoot
Write-Output $scriptPath
Get-Location
如果你需要获取当前脚本所在的目录,可以使用 Get-Location
命令,然后访问其 Path
属性。
$scriptPath = (Get-Location).Path
Write-Output $scriptPath
Split-Path
和 &
如果你有一个脚本的完整路径,并且想要获取该脚本所在的目录,可以使用 Split-Path
命令。
$scriptPath = Split-Path -Path (& { $myInvocation.ScriptName }) -Parent
Write-Output $scriptPath
$MyInvocation
$MyInvocation
是一个自动变量,它包含了有关当前脚本调用的信息。你可以使用它来获取脚本的路径。
$scriptPath = $MyInvocation.MyCommand.Path
Write-Output $scriptPath
$PSCommandPath
$PSCommandPath
是一个自动变量,它包含了当前运行脚本的完整路径。
$scriptPath = $PSCommandPath
Write-Output $scriptPath
这些方法都可以帮助你在PowerShell脚本中获取当前运行脚本的路径。选择哪种方法取决于你的具体需求和PowerShell的版本。