我试图做一个快速而简单的游戏备份脚本,但它对我不起作用。这就是我所拥有的。
@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命令是徒劳无功的,但到目前为止还没有起作用,所以我尝试了一下。
发布于 2012-05-15 05:06:39
问题是%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%。
请注意,这可能有区域问题,但如果您确认它在您的计算机上工作,对于本地备份,它将始终是好的。
发布于 2012-05-17 05:00:56
以下是我发现的似乎有效的方法:
@setlocal enableextensions
set datestamp=%date:~-4,4%%date:~-10,2%%date:~7,2%
mkdir %datestamp%https://stackoverflow.com/questions/10590567
复制相似问题