我正在创建一个批处理文件,我在一个路径上
C:\Validation\docs\chm
我想搬回
C:\Validation part
这是在 %DialogPath% 这是由用户输入的,但是当我写
CD /D %DialogPath%
发生错误,告诉此路径不存在
我正在创建一个批处理文件,我在一个路径上
C:\Validation\docs\chm
我想搬回
C:\Validation part
这是在 %DialogPath% 这是由用户输入的,但是当我写
CD /D %DialogPath%
发生错误,告诉此路径不存在
您的问题的直接答案是
cd ..\..
但cd /D C:\Validation
也有效。
与 then 命令相比,变量更可能出现问题。
在您提供有关脚本的更多详细信息之前,我们只能猜测问题可能是什么。
但是,由于您只在有限的时间内更改当前目录,您应该使用pushd
andpopd
命令。
示例:(运行此 .bat 脚本以查看如何pushd
工作popd
!)
:: Hide Commands
@echo off
:: Display Current Working Directory
echo Current Directory = %CD%
:: Create folders for demonstration purposes only
rd /Q "%Temp%\Test" 2>nul & mkdir "%Temp%\Test" & mkdir "%Temp%\Test\Subfolder"
:: Change the Working Directory
pushd "%Temp%"
:: Display Current Working Directory
echo Current Directory = %CD%
pushd "%Temp%\Test\Subfolder"
:: Display Current Working Directory
echo Current Directory = %CD%
:: Revert back to the previous Working Directory
popd
:: Display Current Working Directory
echo Current Directory = %CD%
:: Revert back to the previous Working Directory
popd
:: Display Current Working Directory
echo Current Directory = %CD%
pause
您可以使用 向上移动一条路径cd ..
。如果您这样做两次,您将进入C:\Validation
目录。
在您的示例中,它看起来像这样:
C:\Validation\docs\chm> cd ..
C:\Validation\docs> cd ..
C:\Validation>