批处理脚本 - 将文件夹中的文件复制到另一个文件夹

问题描述 投票:0回答:1

我想知道是否有一种更快的方法将文件夹中的所有文件复制到具有今天日期的新文件夹。

xcopy /s "C:\Users\Frankenstein\Desktop\Files\*.*" "C:\Users\Frankenstein\Desktop\Backup\08112023\"

有没有办法: A。自动化日期 b.强制目录?

我收到一条提示“指定目标上的文件名或目录名(F=文件,D=目录)?”

我每次都手动更改日期并按 D。只是想让过程更快。

提前非常感谢!

batch-file
1个回答
0
投票

您会收到提示,因为命令行不会告诉您的目标是文件还是目录。只需在路径末尾添加反斜杠 \ 即可解决此问题。可以使用 %date% 变量获取日期。 这样的事情应该可以解决您的问题:

xcopy /s "C:\Users\Frankenstein\Desktop\Files\*.*\" "C:\Users\Frankenstein\Desktop\Backup\%date:~0, 2%%date:~3, 2%%date:~6, 4%\"

我建议不要手动运行文件来进行备份,而是建议将其放在 
start-up items

中并添加 'if' 语句,以防当天已进行备份。 为此,类似这样的事情应该有效:

if not exist "C:\Users\Frankenstein\Desktop\Backup\%date:~0, 2%%date:~3, 2%%date:~6, 4%\" xcopy /s "C:\Users\Frankenstein\Desktop\Files\*.*\" "C:\Users\Frankenstein\Desktop\Backup\%date:~0, 2%%date:~3, 2%%date:~6, 4%\"

© www.soinside.com 2019 - 2024. All rights reserved.