PowerShell中获取当前运行脚本路径的方法(powershell获取指定字符串)真没想到

随心笔谈2年前发布 admin
225 0 0

文章摘要

在PowerShell中,可以通过内置的`$MyInvocation`变量获取当前脚本的绝对路径,然后使用`Split-Path -Parent`方法提取脚本所在的文件夹。具体步骤如下: 1. 使用`$x=$MyInvocation.MyCommand.Definition`获取当前脚本的绝对路径。 2. 使用`$x=Split-Path -Parent $MyInvocation.MyCommand.Definition`提取脚本所在的文件夹路径。 这种方法解决了CMD环境中通过`%~dp0`获取文件夹路径的问题,适用于需要根据脚本位置进行操作的场景。



在运行脚本的时候,有时候需要通过脚本文件所在位置的相对路径来做一些事,比如执行另一个脚本。以前在CMD时代,可以通过%~dp0来获取脚本所在的文件夹,那在PowerShell中要怎么做呢?

很简单,通过内置的$MyInvocation变量:

复制代码 代码如下:

$x=$MyInvocation.MyCommand.Definition

此时$x的值是当前运行中的脚本的绝对路径,再用Split-Path取它的父路径就可以了:

复制代码 代码如下:

$x=Split-Path -Parent $MyInvocation.MyCommand.Definition

这样$x的值就是脚本所在的文件夹了……

© 版权声明

相关文章