看网上介绍区别,写的好复杂,其实很简单:
%cd% 在批处理和命令窗口都能使用。用于打印,当前工作路径。
%~dp0% 则只能用于批处理中,用于获得当前批处理文件所在的路径。
做个试验试一下:
@echo off echo this is %%cd%% %cd% echo this is %%~dp0 %~dp0 echo switch to another folder: cd d:\Program Files (x86) echo this is %%cd%% %cd% echo this is %%~dp0 %~dp0 pause