Como ajustar as configurações de data usando o PowerShell



O PowerShell é bastante útil quando você precisa ajustar a data do sistema sem ter que fazer isso manualmente toda vez. Não sei bem por que funciona, mas às vezes você quer definir uma data específica ou adiantá-la/retrocedê-la em horas ou dias — talvez para testar um aplicativo que depende de datas ou simplesmente para experimentar em um ambiente virtual. Tudo é bem simples depois que você pega o jeito, mas é fácil esquecer comandos ou confundi-los se estiver com pressa.

É claro que o Windows não torna isso muito óbvio, a menos que você explore o Painel de Controle, mas o PowerShell pode fazer tudo isso num instante. Lembre-se apenas de que mexer com a hora do sistema pode causar todo tipo de comportamento estranho, então não se esqueça de redefini-la depois. Além disso, dependendo das suas permissões, você pode precisar executar o PowerShell como administrador — caso contrário, esses comandos podem falhar com a mensagem “Acesso negado”.Na pior das hipóteses, você receberá um erro dizendo “Acesso negado”, o que é um bom indicativo para executar como administrador.

Como alterar a data do Windows usando o PowerShell

Alterar data rapidamente com um valor fixo

Esta é a maneira mais básica: defina uma data específica.Útil se você estiver fazendo testes ou simplesmente quiser simular uma data. Basta abrir o PowerShell como administrador (pressione Ctrl+C Win + Xe escolha “Windows PowerShell (Admin)”) e digite:

Set-Date -date "14.11.2017 18:00"

Substitua essa sequência de data e hora pelo que você precisar. Fácil, não é? Em algumas configurações, isso pode falhar imediatamente e funcionar após uma reinicialização, porque o Windows às vezes apresenta problemas se você não tiver permissões ou se algumas políticas de segurança estiverem em vigor.

Adicionar ou subtrair dias, horas e minutos.

Essa é legal porque você pode ajustar a data atual em relação a hoje. Se você quiser retroceder a data em uma semana (o que eu já usei bastante ao testar cenários anteriores), faça o seguinte:

Set-Date (Get-Date).AddDays(-7)

Esta função lê a data atual, subtrai 7 dias e a define. Você também pode adicionar minutos, segundos ou até mesmo horas encadeando métodos:

Set-Date (Get-Date).AddDays(-7).AddMinutes(10).AddSeconds(20)

Isso atrasaria a data em 7 dias e adicionaria 10 minutos e 20 segundos — considere isso como algo extremamente flexível.

Ajuste a hora diretamente com -adjust

Isso é meio estranho, mas se você quiser ajustar o horário com precisão, pode usar o parâmetro -adjust. Por exemplo, para adiantar o horário em uma hora e meia:

Set-Date -adjust -1:30:0

É mais simples do que calcular o total de segundos ou dias, especialmente para ajustes pontuais. Mas não se esqueça: mexer com o horário do sistema pode causar alterações nos relógios, então use este método apenas temporariamente, a menos que você saiba o que está fazendo.

Vale mencionar que esses comandos podem apresentar erros se você não estiver executando o PowerShell com privilégios de administrador ou se algumas políticas estiverem impedindo a alteração da hora do sistema. Além disso, a formatação da sua string de data é importante — muitas pessoas recebem erros porque ela não corresponde ao formato esperado. Em alguns casos, pode ser necessário ajustar as configurações de localidade ou usar formatos de data diferentes, dependendo das configurações de idioma do sistema.

Outro ponto a observar: em alguns computadores, o Windows pode ter a opção “Definir hora automaticamente” ativada nas configurações, o que pode sobrescrever as alterações manuais. Portanto, se os ajustes manuais não forem aplicados, verifique Configurações > Hora e idioma e certifique-se de que a atualização automática não esteja ativada.

Em resumo, o PowerShell é uma ferramenta pequena e poderosa para ajustes rápidos de datas — apenas tenha cuidado, especialmente com mudanças de fuso horário, onde um pequeno erro pode fazer com que seu sistema se comporte de maneira estranha.

Resumo

  • Os comandos do PowerShell podem definir datas específicas ou alterar a hora atual.
  • Utilizar Set-Date -date "DD. MM. YYYY HH:MM"para datas fixas.
  • Utilize métodos como (Get-Date).AddDays(-n)o de ajustar datas em relação a hoje.
  • Lembre-se de executar o PowerShell como administrador para obter as permissões necessárias.
  • Verifique as configurações do Windows se as alterações manuais não estiverem surtindo efeito.

Resumo

Mexer com a data do seu PC não é algo para se fazer levianamente, mas o PowerShell torna isso surpreendentemente simples se você precisar fazer isso temporariamente. Apenas tome cuidado com problemas de permissão e não se esqueça de redefinir o relógio depois, se terminar os testes. Parece funcionar de forma bastante confiável na maioria das configurações, mas sim, o Windows pode ser um pouco estranho com essas coisas às vezes. Espero que isso ajude alguém a economizar um pouco de tempo ou a corrigir um ambiente de teste peculiar. Boa sorte!



Este artigo foi útil?