Sincroniza o Horário da Internet em um script do Windows?

10

Existe uma maneira de sincronizar o relógio do sistema com um servidor de horário na Internet (por exemplo, time.nist.gov) via linha de comando? De preferência, isso deve ser algo executável via script BAT ou PowerShell.

Essa necessidade em particular surge porque tenho algumas VMs para as quais uso regularmente a função "salvar estado da máquina", e elas normalmente não sincronizam novamente seus relógios quando "acordei". Muitas vezes, vou recarregá-los para descobrir que o relógio está (e está ficando) dias fora de sincronia.

A sincronização do relógio na caixa de diálogo Configurações de horário da Internet geralmente funciona bem, mas é necessário muito clique do mouse para fazer isso. Eu prefiro apenas manter um script na área de trabalho que eu possa clicar duas vezes e fazer o trabalho por mim.

Agora, isso é para um sistema que executa o Windows 7 Home x64, mas a compatibilidade com versões anteriores do XP SP3 seria interessante.

    
por Iszi 15.08.2011 / 22:35

3 respostas

13

Consulte a referência para o W32tm, "Uma ferramenta usada para diagnosticar problemas que ocorrem com o Windows Time": link . Além disso, w32tm /?

Use w32tm /resync . Você também pode precisar definir um servidor com net time , se ainda não tiver feito isso.

    
por 15.08.2011 / 22:40
0

Eu costumava fazer isso com o comando net.

para ntp

net time ntp.server.foo

para janelas

net time \\ server

Não me lembro se você precisava de algum tipo de sinalizador / ntp para o ntp ... ele dirá se você faz isso.

    
por 16.08.2011 / 02:40
0
@echo off
net start W32Time
w32tm /resync
echo sync complete
  1. Copie este código para o Bloco de notas e salve-o como um arquivo .bat .
  2. Execute o arquivo em lotes com privilégios de administrador ou agende uma tarefa para executar esse arquivo em lotes no Agendador de tarefas, conforme necessário.

Nota: Isso exigia privilégios de administrador e uma conexão ativa com a Internet.

    
por 24.07.2018 / 08:05