windows 批处理文件bat中当前目录。
![](http://static.blog.csdn.net/images/category_icon.jpg)
版权声明:本文为博主原创文章,未经博主允许不得转载。
在批处理文件中,往往我们想运行当前目录下的某些程序,比如说bat调用Java,请参看本人的其他文章。今天重点说怎么取得当前目录。
在度娘了很多文章之后做一个总结,目前,我发现的有两个:
1,命令 %cd% 或者 !cd!
2,命令 %~dp0
很多人用第一种命令,但是有弊端。
第一种命令,是当进入到命令所在目录后,可以这样运行,如果用windows的自动任务,或者在其他目录输入bat命令的全路径,这样就会出问题。
所以,建议使用第二种
以下举例说明:curDir.bat文件
- @echo off
- setlocal EnableDelayedExpansion
- echo 路径1.1:!cd!
- pause
- @echo off
- echo 路径1.2:%cd%
- pause
- @echo off
- echo 路径2:%~dp0
- pause
打开cmd窗口:环境目录为C:\Users\shenyun
输入全路径:D:\classPath\battojava\curDir.bat 运行bat文件
运行结果:
总结:很明显,
方法1:命令 %cd% 或者 !cd! ,取得是运行的环境目录
方法2:命令 %~dp0 ,取得了bat的文件所在目录