如何在batch文件中取得该文件的路径
2006-04-01 11:31
232 查看
如何在batch文件中取得该文件的路径
hanlray@gmail.comRevision: 0.99 Date: 2006/04/01
很简单,就是用%~dp0,如:
set MYDIR=%~dp0
%~dp是一个batch参数的一个Modifier,这里是修饰%0参数,当然也可以有%~dp1,%~dp2等,按照Microsoft官方的说法,%~dp1的含义是"Expands %1 to a drive letter and path",按照我的理解,其实就是把%x看作一个文件参数时被Comamnd Shell定位到的位置的绝对路径(不包括文件名),如:
C:/>D:/tmp/test.bat %dp0为D:/tmp,%0已经是个绝对路径了,自然是D:/tmp D:/tmp>test.bat %dp0还是D:/tmp,因为此时test.dat是一个相对路径,而在Windows Shell中,文件的相对路径是相对于当前目录的 C:/tmp>D:/tmp/test.bat foo 此时%dp0还是D:/tmp,而%dp1就是C:/tmp了,道理同上 C:/tmp>D:/tmp/test.bat ../foo 此时%dp1就是C:/
不过%~dp0似乎不能在Win9X上工作,alt.msdos.batch里的How to get the path of a batch file貌似解决了这个问题
一个比较全batch相关资源在这里
Microsoft的官方参考在这里
相关文章推荐
- [转]如何在batch文件中把当前的路径记录在一个变量里,并运用这个变量?
- sandbox沙盒介绍以及如何取得沙盒里面各文件的路径,图片导入方式和图片路径获取
- 【iOS开发-3】sandbox沙盒介绍以及如何取得沙盒里面各文件的路径,图片导入方式和图片路径获取
- sandbox沙盒介绍以及如何取得沙盒里面各文件的路径,图片导入方式和图片路径获取
- sandbox沙盒介绍 以及如何取得沙盒里面各文件的路径,以及xcode5 和xcode6上路径的变化
- 如何通过资源管理器取得当前的路径、焦点文件 msdn
- VS2008 VC 如何把图片等资源文件通过本地路径加载方式加载
- JAVA-servelet 取得当前目录的路径/Servlet/class/文件路径/web路径/url地址
- Linux系统中如何添加自己的库文件路径
- 如何获取当前程序文件的路径CurrentPath
- 如何在取得程序运行时所在的路径
- netbeans如何去掉竖着的红线以及在左上角标题栏目显示完整文件路径
- web工程取得文件绝对路径的问题
- WinFrom中如何获取文件图片路径
- Linux系统中如何添加自己的库文件路径
- 如何修改 Total commander 配置文件的路径
- tensorflow学习——spyder创建的文件如何保存到别的路径
- 根据窗口句柄如何取得其对应的应用程序名称和路径?
- 如何修改表空间数据文件路径
- 如何指定GCC的默认头文件路径