Compartilhar via


Set-Date

Altera a hora do sistema no computador para um horário que você especificar.

Sintaxe

Set-Date
   [-Date] <DateTime>
   [-DisplayHint <DisplayHintType>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-Date
   [-Adjust] <TimeSpan>
   [-DisplayHint <DisplayHintType>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

O cmdlet Set-Date altera a data e a hora do sistema no computador para uma data e hora especificadas.

Você pode especificar uma nova data e/ou hora digitando uma cadeia de caracteres ou passando um objeto DateTime ou timeSpan para Set-Date. Para especificar uma nova data ou hora, use o parâmetro Date. Para especificar um intervalo de alteração, use o parâmetro Ajustar.

Você deve ter direitos administrativos para alterar a data e a hora do sistema. No Windows, inicie o PowerShell com a opção Executar como administrador.

Exemplos

Exemplo 1: Adicionar três dias à data do sistema

Esse comando adiciona três dias à data atual do sistema. Isso não afeta o tempo. O comando usa o parâmetro Date para especificar a data.

O cmdlet Get-Date retorna a data atual como um objeto DateTime. O método do objeto DateTime adiciona um número especificado de dias (3) ao objeto DateTime do atual.

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

Exemplo 2: Definir o relógio do sistema de volta 10 minutos

Este exemplo define o tempo atual do sistema em 10 minutos.

O parâmetro Ajustar permite especificar um intervalo de alteração (menos dez minutos) no formato de tempo padrão para a localidade.

O parâmetro DisplayHint diz ao PowerShell para exibir apenas a hora, mas não afeta o objeto DateTime que Set-Date retorna.

Set-Date -Adjust -0:10:0 -DisplayHint Time

Exemplo 3: Definir a data e a hora para um valor variável

Esses comandos alteram a data e a hora do sistema no computador local para a data e a hora salvas na variável $T. O primeiro comando obtém a data e a armazena em $T.

O segundo comando usa o parâmetro Date para passar o objeto DateTime em $T para o cmdlet Set-Date.

$T = Get-Date
Set-Date -Date $T

Exemplo 4: Adicionar 90 minutos ao relógio do sistema

Esses comandos avançam o tempo do sistema no computador local em 90 minutos.

O primeiro comando usa o cmdlet New-TimeSpan para criar um objeto TimeSpan com um intervalo de 90 minutos e o salva na variável $90mins.

O segundo comando usa o parâmetro Ajustar de Set-Date para ajustar a data pelo valor do objeto TimeSpan na variável $90mins.

$90mins = New-TimeSpan -Minutes 90
Set-Date -Adjust $90mins

5: Alterar para uma data e hora específicas

O exemplo a seguir define a data e a hora como um valor específico.

PS> Get-Date

Monday, June 10, 2024 2:05:48 PM

PS> Set-Date '6/11/2024 2:05:48 PM'

Tuesday, June 11, 2024 2:05:48 PM

Parâmetros

-Adjust

Especifica o valor para o qual esse cmdlet adiciona ou subtrai da data e hora atuais. Você pode digitar um ajuste no formato de data e hora padrão para sua localidade ou usar o parâmetro Ajustar para passar um objeto TimeSpan de New-TimeSpan para Set-Date.

Tipo:TimeSpan
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-Confirm

Solicita a confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Date

Altera a data e a hora para os valores especificados. Você pode digitar uma nova data no formato de data curta e uma hora no formato de hora padrão para sua localidade. Ou você pode passar um objeto DateTime de Get-Date.

Se você especificar uma data, mas não uma hora, Set-Date alterará a hora para meia-noite na data especificada. Se você especificar apenas uma hora, ela não alterará a data.

Tipo:DateTime
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-DisplayHint

Especifica quais elementos da data e hora são exibidos. Os valores aceitáveis para este parâmetro são:

  • Date – exibe apenas a data.
  • Time - exibe apenas a hora.
  • DateTime – exibe a data e a hora.

Esse parâmetro afeta apenas a exibição. Ele não afeta o objeto DateTime que Get-Date recupera.

Tipo:DisplayHintType
Valores aceitos:Date, Time, DateTime
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

DateTime

Você pode canalizar uma data para este cmdlet.

Saídas

DateTime

Esse cmdlet retorna um objeto que representa a data que ele definiu.

Observações

  • Use esse cmdlet com cuidado ao alterar a data e a hora no computador. A alteração pode impedir que o computador receba eventos e atualizações em todo o sistema disparados por uma data ou hora. Use os parâmetros WhatIf e Confirm para evitar erros.
  • Você pode usar métodos .NET padrão com os objetos DateTime e TimeSpan usados com Set-Date, como AddDays, AddMonthse FromFileTime. Para obter mais informações, consulte métodos DateTime e métodos TimeSpan no SDK do .NET.