Questão Janelas de desligamento com prompt gráfico para usuário


Gerenciamos cerca de 60 distribui PCs com Windows 7 usando o Powershell Remoting. Depois que nosso trabalho estiver concluído, gostaríamos que os computadores desligassem: fazer isso é fácil usando o comando shutdown / s / t X. Mas às vezes os usuários estão trabalhando ativamente nas máquinas no momento em que enviamos o comando de desligamento, então seria bom se o aviso de desligamento oferecesse a opção de cancelar o desligamento.

Isso é possível com o comando shutdown? Existem outras ferramentas que permitem isso?


3


origem




Respostas:


A partir de shutdown /?:

No args    Display help. This is the same as typing /?.
/?         Display help. This is the same as not typing any options.
/i         Display the graphical user interface (GUI).
           This must be the first option.
/l         Log off. This cannot be used with /m or /d options.
/s         Shutdown the computer.
/r         Shutdown and restart the computer.
/g         Shutdown and restart the computer. After the system is
           rebooted, restart any registered applications.
/a         Abort a system shutdown.
           This can only be used during the time-out period.
/p         Turn off the local computer with no time-out or warning.
           Can be used with /d and /f options.
/h         Hibernate the local computer.
           Can be used with the /f option.
/e         Document the reason for an unexpected shutdown of a computer.
/m \\computer Specify the target computer.
/t xxx     Set the time-out period before shutdown to xxx seconds.
           The valid range is 0-315360000 (10 years), with a default of 30.
           If the timeout period is greater than 0, the /f parameter is
           implied.
/c "comment" Comment on the reason for the restart or shutdown.
           Maximum of 512 characters allowed.
/f         Force running applications to close without forewarning users.
           The /f parameter is implied when a value greater than 0 is
           specified for the /t parameter.
/d [p|u:]xx:yy  Provide the reason for the restart or shutdown.
           p indicates that the restart or shutdown is planned.
           u indicates that the reason is user defined.
           If neither p nor u is specified the restart or shutdown is
           unplanned.
           xx is the major reason number (positive integer less than 256).
           yy is the minor reason number (positive integer less than 65536).

/t, /c e /a são as opções de interesse aqui.

/t fornece um tempo limite /a permite que um usuário cancele um processo de desligamento enquanto aguarda o tempo limite /c permite-lhe fornecer uma mensagem (/d afeta os logs)

Solução possível - No comentário, indique que o desligamento pode ser cancelado executando shutdown /a dentro do tempo limite.

Considere enviar emails aos usuários descrevendo isso com mais detalhes.

Outra solução seria executar um script curto que dá ao usuário a opção de adiar ou autorizar o encerramento, no ponto em que ele aguardaria ou executaria o comando de desligamento.

Edit: Encontrei praticamente a mesma pergunta no SO, respondida aqui: Um arquivo de lote para desligar com a opção de prompt para abortar e re-executar após um determinado tempo de quantidade?


2