Powershell编程基础-003-脚本的绝对路径及所在的目录


在运行脚本的时候,有时候需要通过脚本文件所在目录路径来做一些事,

如脚本5201351.ps1脚本,

常规思路实现>>>>:

1、如果要获取这个脚本所在的绝对路径,可以使用内置的$MyInvocation变量($MyInvocation.MyCommand.Definition)

$script_fullname=$MyInvocation.MyCommand.Definition
echo $script_fullname             #输出结果格式:C:\Users\5201351\Desktop\5201351.ps1

2、如果要获取脚本所在的目录名,

$script_dir = Split-Path -Parent $MyInvocation.MyCommand.Definition
echo $script_dir                  #输出结果格式:C:\Users\5201351\Desktop

补充:直接进入脚本所在目录,也可以直接写 cd  (Split-Path -Parent $MyInvocation.MyCommand.Definition)

对于目录名中有空格,先声明变量,再进入,或者直接上面一条命令进入,都是可以正常进入的!

换一种思路实现>>>>>:  

1、可以在脚本的最前面,就通过Get-Location取当前的工作目录(类似pwd功能),这样当前工作目录也就是脚本所在的目录了

$PWD_PATH = Get-Location

尊重别人的劳动成果 转载请务必注明出处:

相关