use*_*606 7 windows cmd batch-file
假设我正在使用批处理文件,并希望它直接指向位于批处理的同一目录中的文件夹.如果我没错,你会写"%~dp0\whateverfoldername".但只能写".\ whateverfoldername"不能做同样的事情吗?如果是这样,相应命令的区别和/或优势是什么?
RGu*_*erg 17
pushd %~dp0
Run Code Online (Sandbox Code Playgroud)
通常用于更改到启动批处理的原始目录.当用户可以"以管理员身份运行"为您更改当前目录时,这在较新的操作系统中非常有用!尝试一下.做一个简单的蝙蝠
@echo off
echo.CD=%CD%
pushd %~dp0
echo.CD=%CD%
pause
Run Code Online (Sandbox Code Playgroud)
现在运行它.现在再次在Vista,Win 7,Win 8,2008 Server或2012 Server上以"管理员"身份运行它.走着瞧吧?