@echo off echo Esperando 30 segundos... rem Lo siguiente es necesario porque rem para SET, los números que empiezan rem por 0 son octales. rem 1- Obtén el segundo y añade espacio rem antes. set endTime= %time:~-5,2% rem 2- Elimina cero tras espacio set endTime=%endTime: 0= % rem 3- Opera aritméticamente set /A endTime=( %endTime% + 30 ) %% 60 echo %endTime% rem 4- Recupera el cero for /L %%a in (0;1;9) do if "%endTime%"=="%%a" set endTime=0%%a rem 5- Espera hasta que el valor coincida con rem el segundo actual. :repeat if %time:~-5,2%.==%endTime%. goto :fin goto :repeat