当前位置:  开发笔记 > 编程语言 > 正文

如何在命令行中获取父目录/当前目录的上层目录的完整路径

如何解决《如何在命令行中获取父目录/当前目录的上层目录的完整路径》经验,为你挑选了1个好方法。

如下所示,我有一个名为“ Current Path.bat”的批处理文件存储在“ C:\ A \ B \”中。

C:\A\B\Current Path.bat

我想做的是输出当前目录的父目录/上目录的完整路径(即批处理文件的存储/执行位置)。

在这种情况下,预期结果应为:

C:\A\

目前,我已经找到一种解决方法,但这并不是完美的选择。我想知道是否有更好的解决方案。

我目前的解决方法:

@echo off 
set current_path=%cd%
echo Current Path: %current_path% 
cd ..
set upper_path= %cd%
echo Upper Path: %upper_path%

结果如下:

C:\>cd a
C:\A>cd b
C:\A\B>"Current Path.bat"
Current Path: C:\A\B
Upper Path:  C:\A

我的解决方法的结果



1> AlexP..:

您的方法没有错;为了避免更改当前目录,例如,

pushd ..
set upper_path=%CD%
popd

如果您想避免立即更改目录,可以使用for

for %%x in ("%CD%") do set upper_path=%%~dpx

您可以选择两者中哪个更易读。

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有