Batch file 如何在文本文件名中附加当前日期?

Batch file 如何在文本文件名中附加当前日期?,batch-file,filenames,Batch File,Filenames,我有一个文本文件,它是在运行时由批处理脚本创建的。如何将当前日期附加到文本文件名中,如instancename_4/12/2013 提前感谢试试这个: echo off set v = instancename_%date%.log echo some log >> %v% 使用下列内容 set filea=MyBigFile%date:~10%%date:~4,2%%date:~7,2%%time:~0,2%%time:~3,2%.txt 应将文件名设置为接近您的规范 文件名

我有一个文本文件,它是在运行时由批处理脚本创建的。如何将当前日期附加到文本文件名中,如
instancename_4/12/2013

提前感谢

试试这个:

echo off
set v = instancename_%date%.log
echo some log >> %v%
使用下列内容

set filea=MyBigFile%date:~10%%date:~4,2%%date:~7,2%%time:~0,2%%time:~3,2%.txt 
应将文件名设置为接近您的规范

文件名中不能有
/
%date://=
/
转换为

由于日期格式的前导零被抑制,因此尝试使用子字符串将无法正常工作

我们确实需要知道变量
%date%
在您的机器上是如何显示的。它可能有dayname,有些人将monthname拼写出来,而不是数字。有些人也会在一个月内抑制前导零,我相信也有可能在一天或一个月内有前导空格(日,月)
set filename=instancename_%date:/=_%.txt
for /f "tokens=1,2,3delims=/" %%a in (%date%) do set filename=instancename_%%a_%%b_%%c.txt