我正在尝试制作一个快速而简单的游戏备份脚本,但它对我不起作用。这是我所拥有的。
@echo off
:main
RD /S /Q "C:\Users\Citadel\Desktop\Minecraft_Backups"
mkdir "C:\Users\Citadel\Desktop\Minecraft_Backups\%date% - %time%"
XCOPY "C:\Users\Citadel\AppData\Roaming\.minecraft\saves" "C:\Users\Citadel\Desktop\Minecraft_Backups\%date% - %time%" /D /E /C /R /I /K /Y
echo %date% - %time% - Backup Complete >> log.txt
PING 1.1.1.1 -n 1 -w 900000 >NUL
goto main
老实说,mkdir 命令是在黑暗中拍摄的,但到目前为止还没有任何效果,所以我尝试了它。
最佳答案
问题是 %date%
和 %time%
包含不能在目录名称中使用的特殊字符。在脚本顶部尝试一下:
for /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
for /f "tokens=1-2 delims=/:" %%a in ('time /t') do (set mytime=%%a%%b)
或者,如果您更喜欢 24 小时制,请将第二行更改为:
for /f "tokens=1-2 delims=/:" %%a in ("%TIME%") do (set mytime=%%a%%b)
然后使用 %mydate%_%mytime%
代替 %date% %time%
。
请注意,这可能存在区域问题,但如果您确认它适用于您的计算机,则对于本地备份来说,它总是没问题。
关于windows - 如何使用日期和时间创建文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10590567/