我需要使用批处理命令将文件从一台计算机复制到本地光盘。
我的文件包含dd-mm-yyyy格式的日期。但如果我使用这个:
-%date:/=-%
它被解释为“day”,然后是日期,它与源端的文件名没有真正关联。
一旦我点击我的bat文件,它将复制一个文件夹,说“xyz dd-mm-yyy”我只想复制今天的文件夹,就像我的源机器上保存的最近7天文件夹一样。
编辑:我在源计算机上的文件夹名称是Site_info 11-07-2011
,明天又会有一个文件夹被添加到名为site_info 12-07-2011
的同一台计算机上。我想运行bat文件机器,它只复制今天的文件夹。
EDIT2:感谢您的支持仍然无法实现我的目标。如果可能,请提供以下情况的命令
我的机器路径:c:\ Documents and Settings \ user1 \ Desktop \ SITE_INFO \ Site_info 12-07-2011其中Site_info 12-07-2011将更改为site_info 13-07-2011
来源地址: - \ 97.253.72.127 \ cdma Site_info \ Site_info 12-07-2011明天将在此路径上添加一个文件夹,其日期为\ 97.253.72.127 \ Cdma Site_info \ Site_info 13-07-2011
答案 0 :(得分:1)
如果你的意思是在日期之前有“星期几”部分并且你想要摆脱那部分,那么你可能需要一个额外的变量。首先,您将切断一周中的某一天,然后将/
替换为-
,就像您已经在做的那样。它可能是这样的:
…
SET "dateonly=%date:~4%"
SET "dateonly=%dateonly:/=-"
…
COPY \\computer\share\path\whatever-%dateonly%.ext drive:\path\%dateonly%\
…
答案 1 :(得分:1)
您可以尝试按照您希望的方式拼写日期:
set mydate=%date:~-10,2%-%date:~-7,2%-%date:~-4%
xcopy /E /I "Site_info %mydate%" "Copy\Site_info %mydate%"