PowerShell中获取当前运行脚本路径

Viewed 8

PowerShell中获取当前运行脚本路径

1 Answers

在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的版本。

桂ICP备18011783号-1