ZZ: windows 批处理文件bat中获取当前目录

来源:互联网 发布:阿里云共享型主机 编辑:程序博客网 时间:2024/05/06 06:50

zz from: http://blog.csdn.net/shenyunsese/article/details/17024631


批处理文件中,往往我们想运行当前目录下的某些程序,比如说bat调用java,请参看本人的其他文章。今天重点说怎么取得当前目录。


在度娘了很多文章之后做一个总结,目前,我发现的有两个:

1,命令   %cd%  或者  !cd!

2,命令   %~dp0

很多人用第一种命令,但是有弊端。

第一种命令,是当进入到命令所在目录后,可以这样运行,如果用windows的自动任务,或者在其他目录输入bat命令的全路径,这样就会出问题。

所以,建议使用第二种

以下举例说明:curDir.bat文件

[plain] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. @echo off  
  2. setlocal EnableDelayedExpansion  
  3. echo 路径1.1:!cd!  
  4. pause  
  5. @echo off  
  6. echo 路径1.2:%cd%  
  7. pause  
  8. @echo off  
  9. echo 路径2:%~dp0  
  10. pause  
文件存放于:D:\classPath\battojava  目录

打开cmd窗口:环境目录为C:\Users\shenyun

输入全路径:D:\classPath\battojava\curDir.bat  运行bat文件

运行结果:


总结:很明显,

方法1:命令   %cd%  或者  !cd!  ,取得是运行的环境目录

方法2:命令  %~dp0   ,取得了bat的文件所在目录


0 0
原创粉丝点击