Manchmal mein Aufruf: GetTime-Prozedur funktioniert manchmal nicht. Manchmal werden meine Archive nur mit dem Namen .rar benannt, zum Beispiel 23.05.2017_22-02-07.rarBatch-Set eine Var nicht immer funktioniert in Schleife
Warum passiert das? Die meiste Zeit funktioniert es gut ....
for /f "usebackq delims=" %%a in (`"%MD5% default_main_GlobalData.CSF"`) do set StartMD5=%%a
for %%a in (%StartMD5%) do set StartMD5=%StartMD5:~0,32%
:Proc1
if exist del "%Workdir%\SniperGhostWarrior3_Savegames\Hidden\.rar"
if exist del "%Workdir%\SniperGhostWarrior3_Savegames\Profile\.rar"
for /f "usebackq delims=" %%a in (`"%MD5% default_main_GlobalData.CSF"`) do set CurrentMD5=%%a
for %%a in (%CurrentMD5%) do set CurrentMD5=%CurrentMD5:~0,32%
if not "%CurrentMD5%" == "%StartMD5%" (
call :GetTime
%Winrar% a -inul "%Workdir%\SniperGhostWarrior3_Savegames\Hidden\Temp.rar" "C:\Users\Administrator\Saved Games\Sniper Ghost Warrior 3\"
%Winrar% a -inul "%Workdir%\SniperGhostWarrior3_Savegames\Profile\Temp.rar" "D:\Spiele\Sniper Ghost Warrior 3\win_x64\Profile"
ren "%Workdir%\SniperGhostWarrior3_Savegames\Hidden\Temp.rar" "%CurrentTime%.rar" >nul 2>&1
ren "%Workdir%\SniperGhostWarrior3_Savegames\Profile\Temp.rar" "%CurrentTime%.rar" >nul 2>&1
set "StartMD5=%CurrentMD5%"
echo Game Saved. Backup created. %CurrentTime%
)
goto :Proc1
:GetTime
set "CurrentTime=%date%_%time:~0,-3%"
set word=-
call set CurrentTime=%%CurrentTime::=%word%%%
goto :eof
Wofür sind die 'for %% a'-Schleifen? Du benutzt nie seine Variable '%% a' im Körper ... Und' falls vorhanden del' ist eine falsche Syntax - siehe 'if /?' ... – aschipfl