批处理的偏门小技巧
在批处理应用中,我们经常为两方面的东西发愁:路径和文件名、日期和时间,在自动化构建也碰到这样的问题,经过查找资料和验证,把获取这些参数数据的方法罗列如下:
表达式 |
功能描述 |
%1 ~ %9 |
脚本参数,%0 -- 脚本文件,%1 ~ %9 第一个至第九个参数 |
%CD% |
获取当前脚本所在的目录 |
%~dp0 |
获取当前脚本所在的目录 |
%~f0 |
获取当前脚本的完整路径 |
%~n0 |
获取当前脚本的文件名(不含扩展名) |
%~nx0 |
获取当前脚本的文件名(包括扩展名) |
%~x0 |
获取当前脚本的扩展名 |
%DATE% |
获取当前日期:2010-10-27 星期三【注:可能被用户修改】 |
%TIME% |
获取当前时间:18:19:29.78【注:可能被用户修改】 |
%DATE:~0,4% |
获取日期中年数据 |
%DATE:~5,2% |
获取日期中月数据 |
%DATE:~8,2% |
获取日期中日数据 |
%TIME:~0,2% |
获取时间中时钟数 |
%TIME:~3,2% |
获取时间中分钟数 |
%TIME:~6,2% |
获取时间中分秒数 |
有了这些细致的数据,想要实现某些特殊目的的格式化就轻而易举了,例如想要基于日期时间定义新文件名(File_YYYYmmddHHMMSS.txt),定义如下:
File_%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%.txt