3

我在 bat 文件中有一个 xcopy 语句.. 请您帮我将今天的日期附加到目标 xcopy /S /E /I %sourceFolder% "C:\Shared\copy\%destinationFolder%" 中的目录之一

今天的日期是 06072013 所以我希望我的目的地如下所示

C:\Shared\copy-今天的日期............

谢谢

4

4 回答 4

3

这是获取不依赖于区域设置的日期戳的方法。Wmic 在 Windows XP Pro 和更高版本中可用。

@echo off
for /f "delims=" %%a in ('wmic OS Get localdatetime  ^| find "."') do set dt=%%a
set datestamp=%dt:~0,8%
set timestamp=%dt:~8,6%
set YYYY=%dt:~0,4%
set MM=%dt:~4,2%
set DD=%dt:~6,2%
set HH=%dt:~8,2%
set Min=%dt:~10,2%
set Sec=%dt:~12,2%

set stamp=%YYYY%-%MM%-%DD%

md "C:\Shared\copy-%stamp%"
xcopy here...
于 2013-06-08T07:54:44.447 回答
2
xcopy /S /E /I %sourceFolder% "C:\Shared\copy-%date:/=%\%destinationFolder%"
于 2013-06-08T02:41:42.017 回答
1

只需%date%在您的命令中使用:

xcopy /S /E /I %sourceFolder% "C:\Shared\copy\copy-%date%"

注意:这将使日期保持原始格式。

假设您的本地日期格式是Fri 06/07/2013您可以06072013通过像这样切割字符串来将其格式化:

%date:~4,2%%date:~7,2%%date:~10,4%

所以最终的命令将是:

xcopy /S /E /I %sourceFolder% "C:\Shared\copy\copy-%date:~4,2%%date:~7,2%%date:~10,4%"
于 2013-06-08T02:36:07.343 回答
0

像这样的东西...

for /f "tokens=2-4 delims=/ " %%A in ('echo.%Date%') do set Dest=C:\Shared\copy-%%A%%B%%C
xcopy /S /E /I "%sourceFolder%" "%Dest%"
于 2013-06-08T02:10:20.877 回答