2

すばやく簡単なゲームバックアップスクリプトを実行しようとしていますが、うまくいきません。これが私が持っているものです。

   @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コマンドは暗闇の中でのショットでしたが、これまでのところ何も機能していないので、試してみました。

4

2 に答える 2

3

問題は%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時間制を希望する場合は、2行目を次のように変更します。

for /f "tokens=1-2 delims=/:" %%a in ("%TIME%") do (set mytime=%%a%%b)

そして%mydate%_%mytime%、の代わりに使用し%date% %time%ます。

これには地域的な問題がある可能性があることに注意してください。ただし、マシンで機能することを確認した場合、ローカルバックアップの場合は常に問題ありません。

于 2012-05-14T21:06:39.443 に答える
0

これが私が見つけたもので、うまくいくようです:

@setlocal enableextensions
set datestamp=%date:~-4,4%%date:~-10,2%%date:~7,2%
mkdir %datestamp%
于 2012-05-16T21:00:56.093 に答える