在下面的批处理文件中,我获得当前路径..如何让它在上面打印一个级别"当前路径" ?
set current=%CD%
set parent=%CD%\..
echo %parent%
答案 0 :(得分:1)
除了暂时更改目录外,没有其他方法可以做到这一点。
幸运的是,有一种简单的方法可以返回目录然后再次切换:
set current=%CD%
pushd ..
set parent=%CD%
popd
echo %parent%
这使用pushd
和popd
命令,这很好。
请注意,如果您位于根目录(EG C:
),这将导致父级等于当前,但旧脚本也是如此。
答案 1 :(得分:0)
当前路径上方的某个级别没有变量。要获取父文件夹,只需cd回一个目录,将父变量设置为当前目录,如果需要,cd回原始目录。像这样:
set current=%CD%
cd..
set parent=%CD%
cd %current%
echo %parent%
pause
答案 2 :(得分:0)
从第一级或更高级别的文件夹中运行。
@echo off
for %%a in ("%cd%") do echo "%%~dpa"
pause
答案 3 :(得分:0)
这应该返回当前活动目录
的父文件夹的完整路径for %%a in (..\) do set "parent=%%~fa"