在 robocopy 目标文件夹中指定日期

在 robocopy 目标文件夹中指定日期

我想在运行 robocopy 时通过 CLI 指定日期,以便目标文件夹包含日期。

robocopy C:\folder\ Z:\folder_DATE /E /ZB /COPYALL /NP /V /LOG:F:\backup_log.txt

其中 DATE 是当前日期。这可能吗,还是我必须求助于 power shell?

我找到了这个Stack Overflow 文章但我希望让它变得更简单。

答案1

你并没有真正说明你想要的日期格式,所以我使用 yyyymmdd。随着天数、月份和年份的推移,这可能更适合排序。

FOR /F "tokens=2-4 delims=/ " %%a in ('echo %date%') DO SET datevar=%%c%%b%%a
robocopy C:\folder\ Z:\folder_%datevar% /E /ZB /COPYALL /NP /V /LOG:F:\backup_log.txt

您可以随意更改日期,%%c 表示年份,%%b 表示月份,%%a 表示日期。只需根据需要重新排序即可。

答案2

这是我的建议:

FOR /F "tokens=1,2,3 delims=/ " %%A in ('date /T') DO (
robocopy C:\folder\ Z:\folder_%%A-%%B-%%C /E /ZB /COPYALL /NP /V /LOG:F:\backup_log.txt
)

相关内容