Get-Date

Obtient les date et heure actuelles.

Syntax

Get-Date
   [[-Date] <DateTime>]
   [-Year <Int32>]
   [-Month <Int32>]
   [-Day <Int32>]
   [-Hour <Int32>]
   [-Minute <Int32>]
   [-Second <Int32>]
   [-Millisecond <Int32>]
   [-DisplayHint <DisplayHintType>]
   [-Format <String>]
   [<CommonParameters>]
Get-Date
   [[-Date] <DateTime>]
   [-Year <Int32>]
   [-Month <Int32>]
   [-Day <Int32>]
   [-Hour <Int32>]
   [-Minute <Int32>]
   [-Second <Int32>]
   [-Millisecond <Int32>]
   [-DisplayHint <DisplayHintType>]
   [-UFormat <String>]
   [<CommonParameters>]

Description

L’applet Get-Date de commande obtient un objet DateTime qui représente la date actuelle ou une date que vous spécifiez. Get-Date peut mettre en forme la date et l’heure dans plusieurs formats .NET et UNIX. Vous pouvez utiliser Get-Date pour générer une chaîne de caractères de date ou d’heure, puis envoyer la chaîne à d’autres applets de commande ou programmes.

Get-Date utilise les paramètres de culture de l’ordinateur pour déterminer comment la sortie est mise en forme. Pour afficher les paramètres de votre ordinateur, utilisez (Get-Culture).DateTimeFormat.

Exemples

Exemple 1 : Obtenir la date et l’heure actuelles

Dans cet exemple, Get-Date affiche la date et l’heure système actuelles. La sortie se trouve dans les formats de longue date et de longue durée.

Get-Date

Tuesday, June 25, 2019 14:53:32

Exemple 2 : Obtenir des éléments de la date et de l’heure actuelles

Cet exemple montre comment utiliser Get-Date pour obtenir l’élément date ou heure. Le paramètre utilise les arguments Date, Heure ou DateTime.

Get-Date -DisplayHint Date

Tuesday, June 25, 2019

Get-Date utilise le paramètre DisplayHint avec l’argument Date pour obtenir uniquement la date.

Exemple 3 : Obtenir la date et l’heure avec un spécificateur de format .NET

Dans cet exemple, un spécificateur de format .NET est utilisé pour personnaliser le format de la sortie. La sortie est un objet String .

Get-Date -Format "dddd MM/dd/yyyy HH:mm K"

Tuesday 06/25/2019 16:17 -07:00

Get-Date utilise le paramètre Format pour spécifier plusieurs spécificateurs de format.

Les spécificateurs de format .NET utilisés dans cet exemple sont définis comme suit :

Spécificateur Définition
dddd Jour de la semaine - nom complet
MM Numéro du mois
dd Jour du mois - 2 chiffres
yyyy Année au format à 4 chiffres
HH:mm Heure au format 24 heures -no secondes
K Décalage de fuseau horaire à partir de la coordonnée de temps universel (UTC)

Pour plus d’informations sur les spécificateurs de format .NET, consultez Chaînes de format de date et d’heure personnalisées.

Exemple 4 : Obtenir la date et l’heure avec un spécificateur UFormat

Dans cet exemple, plusieurs spécificateurs de format UFormat sont utilisés pour personnaliser le format de la sortie. La sortie est un objet String .

Get-Date -UFormat "%A %m/%d/%Y %R %Z"

Tuesday 06/25/2019 16:19 -07

Get-Date utilise le paramètre UFormat pour spécifier plusieurs spécificateurs de format.

Les spécificateurs de format UFormat utilisés dans cet exemple sont définis comme suit :

Spécificateur Définition
%A Jour de la semaine - nom complet
%m Numéro du mois
%d Jour du mois - 2 chiffres
%Y Année au format à 4 chiffres
%R Heure au format 24 heures -no secondes
%Z Décalage de fuseau horaire à partir de la coordonnée de temps universel (UTC)

Pour obtenir la liste des spécificateurs de format UFormat valides, consultez la section Notes .

Exemple 5 : Obtenir le jour d’une date de l’année

Dans cet exemple, une propriété est utilisée pour obtenir le jour numérique de l’année.

Le calendrier grégorien a 365 jours, sauf pour les années bisses qui ont 366 jours. Par exemple, le 31 décembre 2020 est le jour 366.

(Get-Date -Year 2020 -Month 12 -Day 31).DayOfYear

366

Get-Date utilise trois paramètres pour spécifier la date : Année, Mois et Jour. La commande est encapsulée avec parenthèses afin que le résultat soit évalué par la propriété DayofYear .

Exemple 6 : Vérifier si une date est ajustée pour l’heure d’été

Cet exemple utilise une méthode booléenne pour vérifier si une date est ajustée par heure d’été.

$DST = Get-Date
$DST.IsDaylightSavingTime()

True

Une variable $DST stocke le résultat de Get-Date. $DST utilise la méthode IsDaylightSavingTime pour tester si la date est ajustée pour l’heure d’été.

Exemple 7 : Convertir l’heure actuelle en heure UTC

Dans cet exemple, l’heure actuelle est convertie en heure UTC. Le décalage UTC pour les paramètres régionaux du système est utilisé pour convertir l’heure. Une table de la section Notes répertorie les spécificateurs de format UFormat valides.

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 utilise le paramètre UFormat avec des spécificateurs de format pour afficher la date et l’heure système actuelles. Le spécificateur de format %Z représente le décalage UTC de -07.

La $Time variable stocke la date et l’heure système actuelles. $Time utilise la méthode ToUniversalTime() pour convertir l’heure en fonction du décalage UTC de l’ordinateur.

Exemple 8 : Créer un horodatage

Dans cet exemple, un spécificateur de format crée un objet String timestamp pour un nom de répertoire. L’horodatage inclut la date, l’heure et le décalage 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 variable stocke les résultats d’une Get-Date commande. Get-Date utilise le paramètre Format avec le spécificateur de format minuscule o pour créer un objet String timestamp. L’objet est envoyé vers le bas du pipeline vers ForEach-Object. Un ScriptBlock contient la $_ variable qui représente l’objet de pipeline actuel. La chaîne d’horodatage est délimitée par des points-virgules remplacés par des points.

New-Item utilise le paramètre Path pour spécifier l’emplacement d’un nouveau répertoire. Le chemin d’accès inclut la $timestamp variable en tant que nom de répertoire. Le paramètre Type spécifie qu’un répertoire est créé.

Paramètres

-Date

Spécifie une date et une heure. L’heure est facultative et, si elle n’est pas spécifiée, retourne 00:00:00.

Entrez la date et l’heure dans un format standard pour les paramètres régionaux système.

Par exemple, en anglais des États-Unis :

Get-Date -Date "6/25/2019 12:30:22" retourne le mardi 25 juin 2019 12:30:22

Type:DateTime
Aliases:LastWriteTime
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Day

Spécifie le jour du mois qui s'affiche. Entrez une valeur comprise entre 1 et 31.

Si la valeur spécifiée est supérieure au nombre de jours d’un mois, PowerShell ajoute le nombre de jours au mois. Par exemple, Get-Date -Month 2 -Day 31 affiche le 3 mars et non le 31 février.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisplayHint

Détermine les éléments de date et d'heure à afficher.

Les valeurs acceptées sont les suivantes :

  • Date : affiche uniquement la date
  • Heure : affiche uniquement l’heure
  • DateTime : affiche la date et l’heure
Type:DisplayHintType
Accepted values:Date, Time, DateTime
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Format

Affiche la date et l'heure dans le format Microsoft .NET Framework indiqué par le spécificateur de format. Le paramètre Format génère un objet String .

Pour obtenir la liste des spécificateurs de format .NET disponibles, consultez les chaînes de format de date et d’heure personnalisées.

Lorsque le paramètre Format est utilisé, Get-Date obtient uniquement les propriétés de l’objet DateTime nécessaires pour afficher la date. Ainsi, certaines propriétés et méthodes des objets DateTime ne sont peut-être pas disponibles.

À compter de PowerShell 5.0, vous pouvez utiliser les formats supplémentaires suivants comme valeurs pour le paramètre Format .

  • FileDate. Représentation conviviale du fichier ou du chemin d’accès de la date actuelle dans l’heure locale. Le format est yyyyMMdd (sensible à la casse, à l’aide d’une année à 4 chiffres, d’un mois à 2 chiffres et d’un jour à deux chiffres). Par exemple : 20190627.

  • FileDateUniversal. Représentation conviviale du fichier ou du chemin d’accès de la date actuelle dans l’heure universelle (UTC). Le format est yyyyMMddZ (sensible à la casse, à l’aide d’une année à 4 chiffres, d’un mois à 2 chiffres, d’un jour à 2 chiffres et de la lettre Z comme indicateur UTC). Par exemple : 20190627Z.

  • FileDateTime. Représentation conviviale du fichier ou du chemin d’accès de la date et de l’heure actuelles dans l’heure locale, au format 24 heures. Le format est yyyyMMddTHHmmssffff (sensible à la casse, à l’aide d’une année à 4 chiffres, d’un mois à 2 chiffres, d’un jour à 2 chiffres, de la lettre T comme séparateur de temps, d’une heure à 2 chiffres, d’une minute à 2 chiffres, d’une seconde à 2 chiffres et de 4 chiffres millisecondes). Par exemple : 20190627T0840107271.

  • FileDateTimeUniversal. Représentation conviviale du fichier ou du chemin d’accès de la date et de l’heure actuelles dans l’heure universelle (UTC), au format 24 heures. Le format est yyyyMMddTHHmmssffffZ (sensible à la casse, à l’aide d’une année à 4 chiffres, d’un mois à 2 chiffres, d’un jour à 2 chiffres, de la lettre T en tant que séparateur de temps, d’une heure à 2 chiffres, d’une minute à 2 chiffres, d’une seconde à 2 chiffres, de 4 chiffres et de la lettre Z en tant qu’indicateur UTC). Par exemple : 20190627T1540500718Z.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Hour

Spécifie l'heure qui s'affiche. Entrez une valeur comprise entre 0 et 23.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Millisecond

Spécifie le nombre de millisecondes dans la date. Entrez une valeur comprise entre 0 et 999.

Ce paramètre a été introduit dans PowerShell 3.0.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Minute

Spécifie le nombre de minutes qui s'affiche. Entrez une valeur comprise entre 0 et 59.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Month

Spécifie le mois qui s'affiche. Entrez une valeur comprise entre 1 et 12.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Second

Spécifie le nombre de secondes qui s'affiche. Entrez une valeur comprise entre 0 et 59.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UFormat

Affiche la date et l'heure au format UNIX. Le paramètre UFormat génère un objet de chaîne.

Les spécificateurs UFormat sont précédés d’un signe de pourcentage (%, par exemple, %m, %det %Y. La section Notes contient une table de spécificateurs UFormat valides.

Lorsque le paramètre UFormat est utilisé, Get-Date obtient uniquement les propriétés de l’objet DateTime nécessaires pour afficher la date. Ainsi, certaines propriétés et méthodes des objets DateTime ne sont peut-être pas disponibles.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Year

Spécifie l'année qui s'affiche. Entrez une valeur comprise entre 1 et 9999.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entrées

Pipeline input

Get-Date accepte l’entrée de pipeline. Par exemple : Get-ChildItem | Get-Date.

Sorties

System.DateTime or System.String

Get-Date retourne un objet DateTime à l’exception des paramètres Format et UFormat utilisés. Les paramètres Format ou UFormat retournent des objets String .

Lorsqu’un objet DateTime est envoyé au pipeline vers une applet de commande telle que Add-Content celle qui attend une entrée de chaîne, PowerShell convertit l’objet en objet String .

La méthode (Get-Date).ToString() convertit un objet DateTime un objet String .

Pour afficher les propriétés et les méthodes d’un objet, envoyez l’objet vers le bas du pipeline Get-Member. Par exemple : Get-Date | Get-Member.

Notes

Les objets DateTime sont dans des formats de date et de longue durée pour les paramètres régionaux système.

Les spécificateurs UFormat valides sont affichés dans le tableau suivant :

Spécificateur de format Signification Exemple
%A Jour de la semaine - nom complet Lundi
%a Jour de la semaine - nom abrégé Lun
%B Nom du mois - complet Janvier
%b Nom du mois - abrégé Jan
%C Siècle 20 pour 2019
%c Date et heure - abrégé Thu 27 08:44:18 2019
%D Date au format mm/jj/aaaa 06/27/19
%d Jour du mois - 2 chiffres 05
%e Jour du mois - chiffre précédé d’un espace <espace>5
%F Date au format YYYY-mm-dd, égale à %Y-%m-%d (format de date ISO 8601) 2019-06-27
%G Identique à « Y »
%g Identique à 'y'
%H Heure au format 24 heures 17
%h Identique à 'b'
%I Heure au format 12 heures 05
%j Jour de l’année 1-366
%k Identique à « H »
%l Identique à « I » (majuscule I) 05
%M Minutes 35
%m Numéro du mois 06
%n caractère newline
%p AM ou PM
%R Heure au format 24 heures -no secondes 17:45
%r Heure au format 12 heures 09:15:36 AM
%S Secondes 05
%s Secondes écoulées depuis le 1er janvier 1970 00:00:00 1150451174
%t Caractère d’onglet horizontal
%T Heure au format 24 heures 17:45:52
%U Identique à « W »
%u Jour de la semaine - nombre Dimanche = 0
%V Semaine de l’année 01-53
%w Identique à 'u'
%W Semaine de l’année 00-52
%X Identique à « T »
%x Date au format standard pour les paramètres régionaux 06/27/19 pour english-US
%Y Année au format à 4 chiffres 2019
%y Année au format à 2 chiffres 19
%Z Décalage de fuseau horaire à partir de la coordonnée de temps universel (UTC) -07