Get-Date
Obtém a data e a hora atuais.
Sintaxe
Get-Date
[[-Date] <datetime>]
[-Year <int>]
[-Month <int>]
[-Day <int>]
[-Hour <int>]
[-Minute <int>]
[-Second <int>]
[-Millisecond <int>]
[-DisplayHint <DisplayHintType>]
[-Format <string>]
[<CommonParameters>]
Get-Date
[[-Date] <datetime>]
[-Year <int>]
[-Month <int>]
[-Day <int>]
[-Hour <int>]
[-Minute <int>]
[-Second <int>]
[-Millisecond <int>]
[-DisplayHint <DisplayHintType>]
[-UFormat <string>]
[<CommonParameters>]
Description
O cmdlet Get-Date
obtém um objeto DateTime que representa a data atual ou uma data especificada.
Get-Date
pode formatar a data e a hora em vários formatos .NET e UNIX. Você pode usar Get-Date
para gerar uma cadeia de caracteres de data ou hora e, em seguida, enviar a cadeia de caracteres para outros cmdlets ou programas.
Get-Date
usa as configurações de cultura do computador para determinar como a saída é formatada. Para exibir as configurações do computador, use (Get-Culture).DateTimeFormat
.
Exemplos
Exemplo 1: Obter a data e a hora atuais
Neste exemplo, Get-Date
exibe a data e a hora do sistema atuais. A saída está nos formatos long date e long-time.
Get-Date
Tuesday, June 25, 2019 14:53:32
Exemplo 2: Obter elementos da data e hora atuais
Este exemplo mostra como usar Get-Date
para obter o elemento de data ou hora. O parâmetro usa os argumentos Date, Timeou DateTime.
Get-Date -DisplayHint Date
Tuesday, June 25, 2019
Exemplo 3: Obter a data e a hora com um especificador de formato .NET
Neste exemplo, um especificador de formato .NET é usado para personalizar o formato da saída. A saída é um objeto String.
Get-Date -Format "dddd MM/dd/yyyy HH:mm K"
Tuesday 06/25/2019 16:17 -07:00
Get-Date
usa o parâmetro Format para especificar vários especificadores de formato.
Os especificadores de formato .NET usados neste exemplo são definidos da seguinte maneira:
Especificador | Definição |
---|---|
dddd |
Dia da semana - nome completo |
MM |
Número do mês |
dd |
Dia do mês – 2 dígitos |
yyyy |
Ano em formato de 4 dígitos |
HH:mm |
Tempo no formato de 24 horas -no segundos |
K |
Deslocamento de fuso horário da Coordenada de Tempo Universal (UTC) |
Para obter mais informações sobre especificadores de formato .NET, consulte Cadeias de caracteres de formato de data e hora personalizadas.
Exemplo 4: Obter a data e a hora com um especificador UFormat
Neste exemplo, vários especificadores de formato UFormat
Get-Date -UFormat "%A %m/%d/%Y %R %Z"
Tuesday 06/25/2019 16:19 -07
Get-Date
usa o parâmetro UFormat para especificar vários especificadores de formato.
Os especificadores de formato UFormat
Especificador | Definição |
---|---|
%A |
Dia da semana - nome completo |
%m |
Número do mês |
%d |
Dia do mês – 2 dígitos |
%Y |
Ano em formato de 4 dígitos |
%R |
Tempo no formato de 24 horas -no segundos |
%Z |
Deslocamento de fuso horário da Coordenada de Tempo Universal (UTC) |
Para obter uma lista de especificadores de formato de UFormat
Exemplo 5: Obter um dia do ano
Neste exemplo, uma propriedade é usada para obter o dia numérico do ano.
O calendário gregoriano tem 365 dias, exceto pelos anos bissextos que têm 366 dias. Por exemplo, 31 de dezembro de 2020 é o dia 366.
(Get-Date -Year 2020 -Month 12 -Day 31).DayOfYear
366
Exemplo 6: Verificar se uma data está ajustada para o horário de verão
Este exemplo usa um método booliano para verificar se uma data é ajustada pelo horário de verão.
$DST = Get-Date
$DST.IsDaylightSavingTime()
True
Uma variável, $DST
armazena o resultado de Get-Date
.
$DST
usa o método IsDaylightSavingTime para testar se a data é ajustada para o horário de verão.
Exemplo 7: Converter a hora atual em hora UTC
Neste exemplo, a hora atual é convertida em hora UTC. O deslocamento UTC para a localidade do sistema é usado para converter a hora. Uma tabela na seção
Get-Date -UFormat "%A %B/%d/%Y %T %Z"
$Time = Get-Date
$Time.ToUniversalTime()
Wednesday June/26/2019 10:45:26 -07
Wednesday, June 26, 2019 17:45:26
Get-Date
usa o parâmetro UFormat com especificadores de formato para exibir a data e a hora do sistema atual. O especificador de formato %Z representa o deslocamento UTC de -07.
A variável $Time
armazena a data e a hora do sistema atual.
Exemplo 8: Criar um carimbo de data/hora
Neste exemplo, um especificador de formato cria um objeto String de carimbo de data/hora para um nome de diretório. O carimbo de data/hora inclui a data, hora e deslocamento UTC.
$timestamp = Get-Date -Format o | ForEach-Object { $_ -replace ":", "." }
New-Item -Path C:\Test\$timestamp -Type Directory
Directory: C:\Test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 6/27/2019 07:59 2019-06-27T07.59.24.4603750-07.00
A variável $timestamp
armazena os resultados de um comando Get-Date
. ForEach-Object
. Um ScriptBlock contém a variável $_
que representa o objeto de pipeline atual. A cadeia de caracteres de carimbo de data/hora é delimitada por dois-pontos que são substituídos por períodos.
New-Item
usa o parâmetro Path para especificar o local de um novo diretório. O caminho inclui a variável $timestamp
como o nome do diretório. O parâmetro Type especifica que um diretório é criado.
Parâmetros
-Date
Especifica uma data e hora. A hora é opcional e, se não for especificada, retorna 00:00:00.
Insira a data e a hora em um formato padrão para a localidade do sistema.
Por exemplo, em inglês dos EUA:
Get-Date -Date "6/25/2019 12:30:22"
retorna terça-feira, 25 de junho de 2019 12:30:22
Tipo: | DateTime |
Aliases: | LastWriteTime |
Cargo: | 0 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Day
Especifica o dia do mês exibido. Insira um valor de 1 a 31.
Se o valor especificado for maior que o número de dias em um mês, o PowerShell adicionará o número de dias ao mês. Por exemplo, Get-Date -Month 2 -Day 31
exibe de 3 de março, não de 31 de fevereiro.
Tipo: | Int |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-DisplayHint
Determina quais elementos da data e hora são exibidos.
Os valores aceitos são os seguintes:
- Date: exibe apenas a data
- Time: exibe apenas a hora
- DateTime: exibe a data e a hora
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 |
-Format
Exibe a data e a hora no formato do Microsoft .NET Framework indicado pelo especificador de formato. O parâmetro Format gera um objeto String.
Para obter uma lista de especificadores de formato .NET disponíveis, consulte Cadeias de caracteres de formato de data e hora personalizadas.
Quando o parâmetro Format é usado, Get-Date
obtém apenas as propriedades do DateTime objeto necessário para exibir a data. Como resultado, algumas das propriedades e métodos de objetos DateTime podem não estar disponíveis.
A partir do PowerShell 5.0, você pode usar os seguintes formatos adicionais como valores para o parâmetro Format.
FileDate. Uma representação amigável de arquivo ou caminho da data atual no horário local. O formato é
yyyyMMdd
(diferencia maiúsculas de minúsculas, usando um ano de 4 dígitos, um mês de dois dígitos e um dia de 2 dígitos). Por exemplo: 20190627.FileDateUniversal. Uma representação amigável de arquivo ou caminho da data atual em UTC (tempo universal). O formato é
yyyyMMddZ
(diferencia maiúsculas de minúsculas, usando um ano de 4 dígitos, um mês de dois dígitos, um dia de 2 dígitos e a letraZ
como o indicador UTC). Por exemplo: 20190627Z.FileDateTime. Uma representação amigável de arquivo ou caminho da data e hora atuais no horário local, em formato de 24 horas. O formato é
yyyyMMddTHHmmssffff
(diferencia maiúsculas de minúsculas, usando um ano de 4 dígitos, um mês de dois dígitos, um dia de 2 dígitos, a letraT
como separador de tempo, hora de 2 dígitos, minuto de 2 dígitos, segundo de 2 dígitos e milissegundo de 4 dígitos). Por exemplo: 20190627T0840107271.FileDateTimeUniversal
. Uma representação amigável de arquivo ou caminho da data e hora atual em UTC (tempo universal), em formato de 24 horas. O formato é yyyyMMddTHHmmssffffZ
(diferencia maiúsculas de minúsculas, usando um ano de 4 dígitos, mês de 2 dígitos, dia de 2 dígitos, a letraT
como separador de tempo, hora de 2 dígitos, minuto de 2 dígitos, segundo de 2 dígitos, milissegundo de 4 dígitos e a letraZ
como o indicador UTC). Por exemplo: 20190627T1540500718Z.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Hour
Especifica a hora exibida. Insira um valor de 0 a 23.
Tipo: | Int |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Millisecond
Especifica os milissegundos na data. Insira um valor de 0 a 999.
Esse parâmetro foi introduzido no PowerShell 3.0.
Tipo: | Int |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Minute
Especifica o minuto exibido. Insira um valor de 0 a 59.
Tipo: | Int |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Month
Especifica o mês exibido. Insira um valor de 1 a 12.
Tipo: | Int |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Second
Especifica o segundo exibido. Insira um valor de 0 a 59.
Tipo: | Int |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-UFormat
Exibe a data e a hora no formato UNIX. O parâmetro UFormat gera um objeto de cadeia de caracteres.
especificadores de UFormat são precedidos por um sinal percentual (%
), por exemplo, %m
, %d
e %Y
. A seção
Quando o parâmetro
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Year
Especifica o ano exibido. Insira um valor de 1 a 9999.
Tipo: | Int |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Entradas
Pipeline input
Get-Date
aceita entrada de pipeline. Por exemplo, Get-ChildItem | Get-Date
.
Saídas
System.DateTime or System.String
Get-Date
retorna um objeto DateTime exceto quando os parâmetros Format e UFormat são usados. Os parâmetros de Formato
Quando um objeto DateTime é enviado pelo pipeline para um cmdlet, como Add-Content
que espera entrada de cadeia de caracteres, o PowerShell converte o objeto em um objeto String.
O método (Get-Date).ToString()
converte um objeto DateTime um objeto String.
Para exibir as propriedades e métodos de um objeto, envie o objeto pelo pipeline para Get-Member
.
Por exemplo, Get-Date | Get-Member
.
Observações
objetos datetime estão em formatos de longa data e de longa data para a localidade do sistema.
Os especificadores UFormat válidos são exibidos na tabela a seguir:
Especificador de formato | Significado | Exemplo |
---|---|---|
%A |
Dia da semana - nome completo | Segunda-feira |
%a |
Dia da semana - nome abreviado | Seg |
%B |
Nome do mês – completo | Janeiro |
%b |
Nome do mês - abreviado | Jan |
%C |
Século | 20 para 2019 |
%c |
Data e hora – abreviado | Qui 27 jun 08:44:18 2019 |
%D |
Data no formato mm/dd/yy | 06/27/19 |
%d |
Dia do mês – 2 dígitos | 05 |
%e |
Dia do mês - dígito precedido por um espaço | <espaço>5 |
%F |
Data no formato YYYY-mm-dd, igual a %Y-%m-%d (o formato de data ISO 8601) | 2019-06-27 |
%G |
O mesmo que 'Y' | |
%g |
O mesmo que 'y' | |
%H |
Hora em formato de 24 horas | 17 |
%h |
O mesmo que "b" | |
%I |
Hora em formato de 12 horas | 05 |
%j |
Dia do ano | 1-366 |
%k |
O mesmo que 'H' | |
%l |
O mesmo que 'I' (maiúsculas de minúsculas I) | 05 |
%M |
Ata | 35 |
%m |
Número do mês | 06 |
%n |
caractere newline | |
%p |
AM ou PM | |
%R |
Tempo no formato de 24 horas -no segundos | 17:45 |
%r |
Tempo no formato de 12 horas | 09:15:36 AM |
%S |
Segundos | 05 |
%s |
Segundos decorridos desde 1º de janeiro de 1970 00:00:00 | 1150451174.95705 |
%t |
Caractere de guia horizontal | |
%T |
Tempo no formato de 24 horas | 17:45:52 |
%U |
O mesmo que 'W' | |
%u |
Dia da semana - número | Segunda-feira = 1 |
%V |
Semana do ano | 01-53 |
%w |
O mesmo que 'u' | |
%W |
Semana do ano | 00-52 |
%X |
O mesmo que 'T' | |
%x |
Data no formato padrão para localidade | 27/06/19 para English-US |
%Y |
Ano em formato de 4 dígitos | 2019 |
%y |
Ano em formato de dois dígitos | 19 |
%Z |
Deslocamento de fuso horário da Coordenada de Tempo Universal (UTC) | -07 |