批处理文件从数据库转储数据并动态命名文件名

批处理文件从数据库转储数据并动态命名文件名

我有一个批处理过程,可以从我的数据库(Windows 2008 r2)转储数据,并且我想动态地命名我的文件并包含星期几。

使用一个简单的 .bat 文件可以做到这一点吗?

如果是的话怎么办?

答案1

当然:

假设您的区域日期设置如下:

  • 短的:年/月/日
  • 长的:dddd,MMMM dd,yyyy

在批处理文件的顶部,您可以设置一个名为的环境变量名称

set fname=%date:~0,3%

今天(星期三) fname 将设置为星期三。在批处理文件中,你可以将静态文件名替换为 %名称%

您可以轻松地向这个动态变化的名称添加静态文本:

set fname=%date:~0,3%-backup.foo

fname 将设置为:周三备份.foo

正如我上面评论的那样,您可以添加更多与日期相关的信息:

set fname=%date:~0,3%-%date:~10,4%%date:~4,2%%date:~7,2%.foo

fname 将设置为:星期三-20111019.foo

您可以通过在“set fname”变量前面添加路径,或者在脚本中使用%fname%变量时添加路径:set fname=c:\backup\%date:~0,3%-%date:~10,4%%date:~4,2%%date:~7,2%.foo,或者在使用时添加路径: "c:\backup\%fname%"

如果路径或文件名中有空格,请记住使用引号。

相关内容