[bat][批处理][自动化测试]用批处理实现以日期和时间做文件文件夹名
2015-11-14 15:04
316 查看
在自动化测试过程中,经常需要输出log到本地,那么log文件的名称就是一个需要好好考虑的问题,文件名称要有意义,便于识别,便于管理,现在以批处理来处理日期和时间来做文件名,当然也可以做为文件夹名,这样log文件就便于管理,代码的关键是要处理日期格式中的“-”线,以及删除部分系统会在date里显示的周别,只保留日期的数字,同样,时间字符串中的“:”也需要删除。
处理日期date字符串关键代码如下:
echo %date% >1.txt
for /F "tokens=1,2,3 delims=-" %%i in (1.txt) do (
echo set date_str1=%%i%%j%%k>2.bat
)
call 2.bat
rem delete last 4 char
set date_str=%date_str1:~,-4%
日期处理原理是先把日期输出到1.txt,然后使用for循环,输出字符到2.bat,当然,输出时跳过连接符合“-”,再就是调用生成的临时批处理文件,设置date_str1的值,最好使用set date_str=%date_str1:~,-4%来删除最后的4个字符,保留剩下的有用字符。
全部代码如下:
set log_path=d:\log
set host=simpleapp
d:
if not exist %log_path% md %log_path%
cd %log_path%
if not exist %host% md %host%
cd %host%
:gen_date_sting
echo %date% >1.txt
for /F "tokens=1,2,3 delims=-" %%i in (1.txt) do (
echo set date_str1=%%i%%j%%k>2.bat
)
call 2.bat
rem delete last 4 char
set date_str=%date_str1:~,-4%
echo %time% >3.txt
for /F "tokens=1,2,3 delims=:" %%i in (3.txt) do (
echo set time_str1=%%i%%j%%k>4.bat
)
call 4.bat
set time_str=%time_str1:~,-4%
rem ********** delete "-" **********
:del_connect_char1
if "%date_str:~8%"==" " set "date_str=%date_str:~0,-1%"&goto del_connect_char1
rem ********** delete ":" **********
:del_connect_char2
if "%time_str:~8%"==" " set "time_str=%time_str:~0,-1%"&goto del_connect_char2
del 1.txt
del 2.bat
del 3.txt
del 4.bat
:gen_dest_folder
set folder=%host%_%date_str%_%time_str%
if not exist %folder% md %folder%
:gen_dest_file
set file_name=%host%_%date_str%_%time_str%.txt
echo test simple>%file_name%
处理日期date字符串关键代码如下:
echo %date% >1.txt
for /F "tokens=1,2,3 delims=-" %%i in (1.txt) do (
echo set date_str1=%%i%%j%%k>2.bat
)
call 2.bat
rem delete last 4 char
set date_str=%date_str1:~,-4%
日期处理原理是先把日期输出到1.txt,然后使用for循环,输出字符到2.bat,当然,输出时跳过连接符合“-”,再就是调用生成的临时批处理文件,设置date_str1的值,最好使用set date_str=%date_str1:~,-4%来删除最后的4个字符,保留剩下的有用字符。
全部代码如下:
set log_path=d:\log
set host=simpleapp
d:
if not exist %log_path% md %log_path%
cd %log_path%
if not exist %host% md %host%
cd %host%
:gen_date_sting
echo %date% >1.txt
for /F "tokens=1,2,3 delims=-" %%i in (1.txt) do (
echo set date_str1=%%i%%j%%k>2.bat
)
call 2.bat
rem delete last 4 char
set date_str=%date_str1:~,-4%
echo %time% >3.txt
for /F "tokens=1,2,3 delims=:" %%i in (3.txt) do (
echo set time_str1=%%i%%j%%k>4.bat
)
call 4.bat
set time_str=%time_str1:~,-4%
rem ********** delete "-" **********
:del_connect_char1
if "%date_str:~8%"==" " set "date_str=%date_str:~0,-1%"&goto del_connect_char1
rem ********** delete ":" **********
:del_connect_char2
if "%time_str:~8%"==" " set "time_str=%time_str:~0,-1%"&goto del_connect_char2
del 1.txt
del 2.bat
del 3.txt
del 4.bat
:gen_dest_folder
set folder=%host%_%date_str%_%time_str%
if not exist %folder% md %folder%
:gen_dest_file
set file_name=%host%_%date_str%_%time_str%.txt
echo test simple>%file_name%
相关文章推荐
- 4412裸机程序之ddr
- matlab学习笔记(七)---空域变换增强-图像间的代数运算
- 可定制的在线富文本编辑器
- hdu4973A simple simulation problem. 线段树
- PO/POJO/BO/DTO/VO的区别
- 使用Apache2服务器设置反向代理
- spring mvc 报错 expected at least 1 bean which qualifies as autowire candidate for this depend
- springmvc环境的搭建
- 大道至简第七、八章读后感
- 4412裸机程序之常用gcc/makefile/arm汇编指令
- Spark修炼之道(进阶篇)——Spark入门到精通:第一节 Spark 1.5.0集群搭建
- 目录操作函数
- [翻译]十条有用的 GO 技术
- 设计一款给爸爸妈妈用的手机
- 4412裸机程序之UART串口
- HDOJ1868Oulipo(KMP算法)
- 怎么卸载Apache_pn服务-PHPnow使用问题
- Java中关于HashMap的使用和遍历
- Ubuntu编译Hadoop源码异常总结
- 生成带干扰线的验证码