Get-Date
Ottiene la data e l'ora correnti.
Sintassi
Get-Date
[[-Date] <DateTime>]
[-Year <Int32>]
[-Month <Int32>]
[-Day <Int32>]
[-Hour <Int32>]
[-Minute <Int32>]
[-Second <Int32>]
[-Millisecond <Int32>]
[-DisplayHint <DisplayHintType>]
[-Format <String>]
[-AsUTC]
[<CommonParameters>]
Get-Date
[[-Date] <DateTime>]
[-Year <Int32>]
[-Month <Int32>]
[-Day <Int32>]
[-Hour <Int32>]
[-Minute <Int32>]
[-Second <Int32>]
[-Millisecond <Int32>]
[-DisplayHint <DisplayHintType>]
-UFormat <String>
[<CommonParameters>]
Get-Date
-UnixTimeSeconds <Int64>
[-Year <Int32>]
[-Month <Int32>]
[-Day <Int32>]
[-Hour <Int32>]
[-Minute <Int32>]
[-Second <Int32>]
[-Millisecond <Int32>]
[-DisplayHint <DisplayHintType>]
[-Format <String>]
[-AsUTC]
[<CommonParameters>]
Get-Date
-UnixTimeSeconds <Int64>
[-Year <Int32>]
[-Month <Int32>]
[-Day <Int32>]
[-Hour <Int32>]
[-Minute <Int32>]
[-Second <Int32>]
[-Millisecond <Int32>]
[-DisplayHint <DisplayHintType>]
-UFormat <String>
[<CommonParameters>]
Descrizione
Il Get-Date cmdlet ottiene un oggetto DateTime che rappresenta la data corrente o una data specificata. Get-Date può formattare la data e l'ora in diversi formati .NET e UNIX. È possibile usare Get-Date per generare una stringa di caratteri di data o ora e quindi inviare la stringa ad altri cmdlet o programmi.
Get-Date utilizza le impostazioni cultura del computer per determinare la formattazione dell'output. Per visualizzare le impostazioni del computer, usare (Get-Culture).DateTimeFormat.
Esempio
Esempio 1: Ottenere la data e l'ora correnti
In questo esempio viene Get-Date visualizzata la data e l'ora di sistema correnti. L'output si trova nei formati di data e ora estesa.
Get-Date
Tuesday, June 25, 2019 14:53:32
Esempio 2: Ottenere elementi della data e dell'ora correnti
In questo esempio viene illustrato come usare Get-Date per ottenere l'elemento data o ora. Il parametro usa gli argomenti Date, Time o DateTime.
Get-Date -DisplayHint Date
Tuesday, June 25, 2019
Get-Date utilizza il parametro DisplayHint con l'argomento Date per ottenere solo la data.
Esempio 3: Ottenere la data e l'ora con un identificatore di formato .NET
In questo esempio viene usato un identificatore di formato .NET per personalizzare il formato dell'output. L'output è un oggetto String .
Get-Date -Format "dddd MM/dd/yyyy HH:mm K"
Tuesday 06/25/2019 16:17 -07:00
Get-Date usa il parametro Format per specificare diversi identificatori di formato.
Gli identificatori di formato .NET usati in questo esempio sono definiti come segue:
| Identificatore | Definizione |
|---|---|
dddd |
Giorno della settimana - Nome completo |
MM |
Numero del mese |
dd |
Giorno del mese - 2 cifre |
yyyy |
Anno in formato a 4 cifre |
HH:mm |
Tempo in formato 24 ore - nessun secondo |
K |
Differenza di fuso orario dalla coordinata utc (Universal Time Coordinate) |
Per altre informazioni sugli identificatori di formato .NET, vedere Stringhe di formato di data e ora personalizzate.
Esempio 4: Ottenere la data e l'ora con un identificatore UFormat
In questo esempio vengono usati diversi identificatori di formato UFormat per personalizzare il formato dell'output. L'output è un oggetto String .
Get-Date -UFormat "%A %m/%d/%Y %R %Z"
Tuesday 06/25/2019 16:19 -07
Get-Date usa il parametro UFormat per specificare diversi identificatori di formato.
Gli identificatori di formato UFormat usati in questo esempio sono definiti come segue:
| Identificatore | Definizione |
|---|---|
%A |
Giorno della settimana - Nome completo |
%m |
Numero del mese |
%d |
Giorno del mese - 2 cifre |
%Y |
Anno in formato a 4 cifre |
%R |
Tempo in formato 24 ore - nessun secondo |
%Z |
Differenza di fuso orario dalla coordinata utc (Universal Time Coordinate) |
Per un elenco di identificatori di formato UFormat validi, vedere la sezione Note .
Esempio 5: Ottenere il giorno di una data dell'anno
In questo esempio viene usata una proprietà per ottenere il giorno numerico dell'anno.
Il calendario gregoriano ha 365 giorni, ad eccezione degli anni bisestili con 366 giorni. Ad esempio, il 31 dicembre 2020 è il giorno 366.
(Get-Date -Year 2020 -Month 12 -Day 31).DayOfYear
366
Get-Date usa tre parametri per specificare la data: Anno, Mese e Giorno. Il comando viene sottoposto a wrapping con parentesi in modo che il risultato venga valutato dalla proprietà DayofYear .
Esempio 6: Verificare se una data viene modificata per l'ora legale
In questo esempio viene utilizzato un metodo booleano per verificare se una data viene modificata in base all'ora legale.
$DST = Get-Date
$DST.IsDaylightSavingTime()
True
Una variabile archivia $DST il risultato di Get-Date. $DST utilizza il metodo IsDaylightSavingTime per verificare se la data viene modificata per l'ora legale.
Esempio 7: Convertire l'ora corrente in ora UTC
In questo esempio l'ora corrente viene convertita in ora UTC. L'offset UTC per le impostazioni locali del sistema viene usato per convertire l'ora. Una tabella nella sezione Note elenca gli identificatori di formato UFormat validi.
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 il parametro UFormat con gli identificatori di formato per visualizzare la data e l'ora di sistema correnti. L'identificatore di formato %Z rappresenta l'offset UTC di -07.
La $Time variabile archivia la data e l'ora di sistema correnti. $Time utilizza il metodo ToUniversalTime() per convertire l'ora in base all'offset UTC del computer.
Esempio 8: Creare un timestamp
In questo esempio, un identificatore di formato crea un oggetto String timestamp per un nome di directory. Il timestamp include la data, l'ora e l'offset 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
La $timestamp variabile archivia i risultati di un Get-Date comando. Get-Date usa il parametro Format con l'identificatore di formato minuscolo o per creare un oggetto String timestamp. L'oggetto viene inviato alla pipeline a ForEach-Object. Un oggetto ScriptBlock contiene la $_ variabile che rappresenta l'oggetto pipeline corrente. La stringa timestamp è delimitata dai due punti sostituiti da punti.
New-Item utilizza il parametro Path per specificare il percorso di una nuova directory. Il percorso include la $timestamp variabile come nome della directory. Il parametro Type specifica che viene creata una directory.
Esempio 9: Convertire un timestamp Unix
In questo esempio viene convertito un'ora Unix (rappresentata dal numero di secondi dal 1970-01-01 0:00:00) a DateTime.
Get-Date -UnixTimeSeconds 1577836800
Wednesday, January 01, 2020 12:00:00 AM
Esempio 10: Restituire un valore di data interpretato come UTC
In questo esempio viene illustrato come interpretare un valore di data come equivalente UTC. Ad esempio, questo computer è impostato su Pacific Standard Time. Per impostazione predefinita, Get-Date restituisce i valori per il fuso orario. Usare il parametro AsUTC per convertire il valore nell'ora UTC equivalente.
PS> Get-TimeZone
Id : Pacific Standard Time
DisplayName : (UTC-08:00) Pacific Time (US & Canada)
StandardName : Pacific Standard Time
DaylightName : Pacific Daylight Time
BaseUtcOffset : -08:00:00
SupportsDaylightSavingTime : True
PS> (Get-Date -Date "2020-01-01T00:00:00").Kind
Unspecified
PS> Get-Date -Date "2020-01-01T00:00:00"
Wednesday, January 1, 2020 12:00:00 AM
PS> (Get-Date -Date "2020-01-01T00:00:00" -AsUTC).Kind
Utc
PS> Get-Date -Date "2020-01-01T00:00:00" -AsUTC
Wednesday, January 1, 2020 8:00:00 AM
Parametri
Converte il valore di data nell'ora equivalente in formato UTC.
Questo parametro è stato introdotto in PowerShell 7.1.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifica una data e un'ora. L'ora è facoltativa e, se non specificata, restituisce 00:00:00.
Immettere la data e l'ora in un formato standard per le impostazioni locali del sistema.
Ad esempio, in inglese (Stati Uniti):
Get-Date -Date "6/25/2019 12:30:22" restituisce martedì 25 giugno 2019 12:30:22
| Type: | DateTime |
| Aliases: | LastWriteTime |
| Position: | 0 |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Specifica il giorno del mese visualizzato. Immettere un valore compreso tra 1 e 31.
Se il valore specificato è maggiore del numero di giorni in un mese, PowerShell aggiunge il numero di giorni al mese. Ad esempio, Get-Date -Month 2 -Day 31 visualizza il 3 marzo, non il 31 febbraio.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Determina quali elementi della data e dell'ora visualizzare.
I valori accettati sono i seguenti:
- Data: visualizza solo la data
- Ora: visualizza solo l'ora
- DateTime: visualizza la data e l'ora
| Type: | DisplayHintType |
| Accepted values: | Date, Time, DateTime |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Visualizza la data e l'ora nel formato di Microsoft .NET Framework indicato dall'identificatore di formato. Il parametro Format restituisce un oggetto String .
Per un elenco degli identificatori di formato .NET disponibili, vedere Stringhe di formato di data e ora personalizzate.
Quando si utilizza il parametro Format , Get-Date ottiene solo le proprietà dell'oggetto DateTime necessarie per visualizzare la data. Di conseguenza, alcune proprietà e alcuni metodi degli oggetti DateTime potrebbero non essere disponibili.
A partire da PowerShell 5.0, è possibile usare i formati aggiuntivi seguenti come valori per il parametro Format .
FileDate. Rappresentazione file o descrittiva del percorso della data corrente nell'ora locale. Il formato è
yyyyMMdd(con distinzione tra maiuscole e minuscole, con anno a 4 cifre, mese a 2 cifre e giorno a 2 cifre). Ad esempio: 20190627.FileDateUniversal. Un file o una rappresentazione descrittiva del percorso della data corrente nell'ora UTC (Universal Time). Il formato è
yyyyMMddZ(con distinzione tra maiuscole e minuscole, usando un anno a 4 cifre, un mese a 2 cifre, un giorno a 2 cifre e la letteraZcome indicatore UTC). Ad esempio: 20190627Z.FileDateTime. Un file o una rappresentazione descrittiva del percorso della data e dell'ora correnti nell'ora locale, in formato di 24 ore. Il formato è
yyyyMMddTHHmmssffff(con distinzione tra maiuscole e minuscole, con anno a 4 cifre, mese a 2 cifre, giorno a 2 cifre, letteraTcome separatore di tempo, ora a 2 cifre, minuto a 2 cifre, secondo a 2 cifre e millisecondi a 4 cifre). Ad esempio: 20190627T0840107271.FileDateTimeUniversal. Un file o una rappresentazione descrittiva del percorso della data e dell'ora correnti in formato UTC (Universal Time) in formato 24 ore. Il formato è
yyyyMMddTHHmmssffffZ(con distinzione tra maiuscole e minuscole, con anno a 4 cifre, mese a 2 cifre, giorno a 2 cifre, letteraTcome separatore di tempo, ora a 2 cifre, minuto a 2 cifre, secondo a 2 cifre, millisecondo a 4 cifre e letteraZcome indicatore UTC). Ad esempio: 20190627T1540500718Z.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifica l'ora visualizzata. Immettere un valore compreso tra 0 e 23.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifica i millisecondi nella data. Immettere un valore compreso tra 0 e 999.
Questo parametro è stato introdotto in PowerShell 3.0.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifica il minuto visualizzato. Immettere un valore compreso tra 0 e 59.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifica il mese visualizzato. Immettere un valore compreso tra 1 e 12.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifica i secondi visualizzati. Immettere un valore compreso tra 0 e 59.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Visualizza la data e l'ora nel formato UNIX. Il parametro UFormat restituisce un oggetto stringa.
Gli identificatori UFormat sono preceduti da un segno di percentuale (%), ad esempio , %m%de %Y. La sezione Notes contiene una tabella di identificatori UFormat validi.
Quando viene utilizzato il parametro UFormat , Get-Date ottiene solo le proprietà dell'oggetto DateTime necessarie per visualizzare la data. Di conseguenza, alcune proprietà e alcuni metodi degli oggetti DateTime potrebbero non essere disponibili.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Data e ora rappresentate in secondi dal 1° gennaio 1970, 0:00:00.
Questo parametro è stato introdotto in PowerShell 7.1.
| Type: | Int64 |
| Aliases: | UnixTime |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifica l'anno visualizzato. Immettere un valore compreso tra 1 e 9999.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Input
Pipeline input
Get-Date accetta l'input della pipeline. Ad esempio, Get-ChildItem | Get-Date.
Output
System.DateTime or System.String
Get-Date restituisce un oggetto DateTime tranne quando vengono utilizzati i parametri Format e UFormat . I parametri Format o UFormat restituiscono oggetti String .
Quando un oggetto DateTime viene inviato alla pipeline a un cmdlet, ad Add-Content esempio che prevede l'input stringa, PowerShell converte l'oggetto in un oggetto String .
Il metodo (Get-Date).ToString() converte un oggetto DateTime in un oggetto String .
Per visualizzare le proprietà e i metodi di un oggetto, inviare l'oggetto alla pipeline a Get-Member.
Ad esempio, Get-Date | Get-Member.
Note
Gli oggetti DateTime sono in formati di data e ora estesa per le impostazioni locali del sistema.
Gli identificatori UFormat validi vengono visualizzati nella tabella seguente:
| Identificatore di formato | Significato | Esempio |
|---|---|---|
%A |
Giorno della settimana - Nome completo | Monday |
%a |
Giorno della settimana - Nome abbreviato | Mon |
%B |
Nome mese - completo | January |
%b |
Nome mese - abbreviato | Gen |
%C |
Secolo | 20 per il 2019 |
%c |
Data e ora - abbreviata | Gio 27 giugno 08:44:18 2019 |
%D |
Data in formato mm/gg/yy | 06/27/19 |
%d |
Giorno del mese - 2 cifre | 05 |
%e |
Giorno del mese - preceduto da uno spazio se solo una singola cifra | <spazio>5 |
%F |
Data nel formato AAAA-mm-gg, uguale a %Y-%m-%d (formato data ISO 8601) | 2019-06-27 |
%G |
Data settimana ISO (anno contenente giovedì della settimana) | |
%g |
Uguale a "G" - 2 cifre | |
%H |
Ora in formato 24 ore | 17 |
%h |
Uguale a 'b' | |
%I |
Ora in formato 12 ore | 05 |
%j |
Giorno dell'anno | 1-366 |
%k |
Uguale a "H" | |
%l |
Uguale a 'I' (maiuscolo I) | 05 |
%M |
Minuti | 35 |
%m |
Numero del mese | 06 |
%n |
carattere di nuova riga | |
%p |
AM o PM | |
%R |
Tempo in formato 24 ore - nessun secondo | 17:45 |
%r |
Ora in formato 12 ore | 09:15:36 |
%S |
Secondi | 05 |
%s |
Secondi trascorsi dal 1° gennaio 1970 00:00:00 | 1150451174 |
%t |
Carattere di tabulazioni orizzontali | |
%T |
Tempo in formato 24 ore | 17:45:52 |
%U |
Uguale a "W" | |
%u |
Giorno numerico della settimana (1-7) | Lunedì = 1, Domenica = 7 |
%V |
Settimana dell'anno | 01-53 |
%w |
Giorno numerico della settimana (0-6) | Domenica = 0, Sabato = 6 |
%W |
Settimana dell'anno | 00-52 |
%X |
Uguale a 'T' | |
%x |
Data in formato standard per le impostazioni locali | 27/06/19 per Inglese-Stati Uniti |
%Y |
Anno in formato a 4 cifre | 2019 |
%y |
Anno in formato a 2 cifre | 19 |
%Z |
Differenza di fuso orario dalla coordinata utc (Universal Time Coordinate) | -07 |
Collegamenti correlati
Commenti e suggerimenti
Invia e visualizza il feedback per