Experimente o script em lote abaixo, depende do tempo de atividade do sistema. Execute isto quando achar apropriado, com o Scheduler
@echo off
setlocal enabledelayedexpansion
for /f "tokens=2 delims=," %%a in ('systeminfo ^| findstr Boot ^| findstr System') do (
set output=%%a
set /a hrs=!output:~1,1!
set mins=!output:~3,2!
::echo !output!
::echo !hrs!
::echo !mins!
if !hrs! == 5 (
if !mins! == 50 (
shutdown -s -f -t 100
)
)
)
Bem, essa é a ideia, ajustar conforme necessário
Explicação.
- Extraia a hora em que o computador foi ligado,
systeminfo ^ | findstr Boot ^ | Sistema findstr
systeminfo tem muita informação lá, então estamos filtrando apenas o parâmetro que precisamos que estamos procurando.
por exemplo,
C: \ Usuários & gt; systeminfo | findstr Boot | findstr System
Tempo de inicialização do sistema: 12/4/2014, 7:20:37 AM
- Selecione o campo de hora apenas separado pela vírgula
para / f "tokens = 2 delims =," %% a em ('systeminfo ^ | findstr Boot ^ | findstr System') do (
definir saída = %% a
e nessa string inteira apenas selecione o primeiro caractere (1 espaço), o terceiro e o quarto caractere (2 espaços)
set / a hrs =! saída: ~ 1,1!
set mins =! saída: ~ 3,2!
Para dar apenas a hora e o minuto
- Se função para desligar se o tempo é uma correspondência.
se! horas! == 5 (
if !mins! == 50 (
shutdown -s -f -t 100
PS: O abaixo é o comentário para ver, se houver algum erro no código,
:: echo! saída!
:: echo! horas!
:: echo! min!