我有计划的备份脚本,使数据库转储。 如何将date时间戳添加到文件名?
我正在谈论Windows和CMD。
在命令提示符和batch file中,可以分别使用%date%和%time%来返回date和时间。 date工作正常,但返回的时间值包含冒号,这是非法的文件名使用,但有一种方法来删除这些。
使用类似于:
COPY file.txt file_%time:~0,2%%time:~3,2%%time:~6,2%_%date:~-10,2%%date:~-7,2%%date:~-4,4%.txt
这将产生一个文件名,如file_172215_01062009.txt
更新:下面的评论有这个命令有趣的曲折以及一些潜在的问题,你可以避免。
使用%DATE%和/或%TIME环境variables,可选地使用%name:from=to% ( %TIME::=%将删除所有冒号)replace文件名中不允许的字符。
理论»回声%date% 2009-06-01 理论»回声%时间% 16:30:41,46 理论»回声%时间:: =% 163052,17 理论»回声%时间:: =,% 16,30,58,68 理论»回声备份 - %date% - %时间:: = - %。zip 备份2009-06-01-16-31-18,82.zip
在文件名中使用%DATE%variables。
还有一个%TIME%variables,但它包含文件名中不允许的字符。
以下是将一行文本写入新文件的示例,其中创build的文件的名称中包含date和时间。
echo "testfile" >> backup-%DATE%.txt