Batch file 使用批处理命令每天复制文件

Batch file 使用批处理命令每天复制文件,batch-file,Batch File,我需要使用批处理命令将文件从一台计算机复制到本地光盘 我的文件包含dd mm yyyy格式的日期。但如果我正在使用这个: -%date:/=-% 它被解释为“day”,然后是date,它实际上与源端的文件名没有关联 一旦我点击我的bat文件,它将复制一个文件夹,比如“xyz dd mm yyy”,我只想复制今天的文件夹,就像在我的源计算机上保存的最后7天文件夹一样 编辑:源计算机上的我的文件夹名为Site\u info 11-07-2011,明天将向同一计算机添加一个名为Site\u info

我需要使用批处理命令将文件从一台计算机复制到本地光盘

我的文件包含dd mm yyyy格式的日期。但如果我正在使用这个:

-%date:/=-%
它被解释为“day”,然后是date,它实际上与源端的文件名没有关联

一旦我点击我的bat文件,它将复制一个文件夹,比如“xyz dd mm yyy”,我只想复制今天的文件夹,就像在我的源计算机上保存的最后7天文件夹一样

编辑:源计算机上的我的文件夹名为
Site\u info 11-07-2011
,明天将向同一计算机添加一个名为
Site\u info 12-07-2011
。我想运行bat文件机,它将只复制今天的文件夹

EDIT2:谢谢你的善意支持,我仍然无法实现我的目标。如果可能的话,请提供以下情况的命令

我的计算机路径:c:\Documents and Settings\user1\Desktop\SITE\u INFO\SITE\u INFO 12-07-2011,其中SITE\u INFO 12-07-2011将更改为SITE\u INFO 13-07-2011


源地址:-\97.253.72.127\Cdma Site\u info\Site\u info 12-07-2011明天将在该路径上添加一个文件夹,日期为\97.253.72.127\Cdma Site\u info\Site\u info 13-07-2011,那么您可能需要一个额外的变量。首先,您将切断一周中的某一天,然后将
/
替换为
-
,就像您已经在做的那样。可能是这样的:

…
SET "dateonly=%date:~4%"
SET "dateonly=%dateonly:/=-"
…
COPY \\computer\share\path\whatever-%dateonly%.ext drive:\path\%dateonly%\
…
…
设置“dateonly=%date:~4%”
设置“dateonly=%dateonly:/=-”
…
复制\\computer\share\path\whatever-%dateonly%.ext驱动器:\path\%dateonly%\
…

您可以尝试按照自己的方式拼凑日期:

set mydate=%date:~-10,2%-%date:~-7,2%-%date:~-4%
xcopy /E /I "Site_info %mydate%" "Copy\Site_info %mydate%"

你能回答为什么安德烈的建议不起作用吗。您是否可以添加您的
%date%
外观,我们不知道您使用的是哪些区域设置。