Para o Windows, "Estou sendo ligado" e "Estou sendo reinicializado" são a mesma coisa. O sistema operacional não conhece nenhuma diferença entre os dois. Os modos de hibernação ou suspensão são diferentes, mas as reinicializações do meio-dia podem realmente exigir uma reinicialização, e um modo de hibernação ou suspensão não será suficiente.
Considere este design (somente passos; eu roteiro no bash). Dois scripts, um script clock-in e um script clock-out . Programe o primeiro para ser executado no login / boot, toda vez que o computador for iniciado . Execute o segundo manualmente, somente quando o tempo limite for - deixe o computador desligado para você.
script de entrada de relógio
Execute isso automaticamente na inicialização (ou login). Ele pode ser agendado com o agendador do Windows ou colocado na pasta Inicializar. Ele criará um arquivo para indicar que você fez o login e não o marcará novamente se o arquivo existir quando for executado:
- Verificar a existência de algum arquivo de texto "C: \ username.clocked.in" e sair se encontrado . Se não for encontrado, continue.
- Crie o arquivo.
- Executar o comando de entrada do relógio.
script de saída do relógio
Este script não é executado automaticamente. Em vez disso, ele deve ser executado clicando duas vezes em um ícone da área de trabalho quando o usuário estiver pronto para sair e desligar o computador. Esse script excluirá o arquivo especial, executará o comando de encerramento e desligará o computador.
- Apagar o arquivo de trava "C: \ username.clocked.in".
- Executar o comando de saída do relógio.
-
Execute
shutdown -s
para desligar o computador.