Comment formater une DateTime dans PowerShell

  1. Utiliser l’option -format pour formater une date et une heure dans PowerShell
  2. Utiliser (Get-Date).ToString pour formater une date et une heure dans PowerShell
  3. Sélectionner parmi tous les styles de formatage de date et d’heure en utilisant GetDateTimeFormats() dans PowerShell
  4. Formater la date et l’heure à utiliser dans un en-tête HTTP dans PowerShell
  5. Utiliser l’option UFormat pour formater une date et une heure dans PowerShell
  6. Conclusion
Comment formater une DateTime dans PowerShell

Get-Date est un cmdlet dans PowerShell, un shell de commande basé sur des tâches et un langage de script construit sur .NET. Ce cmdlet est principalement utilisé pour récupérer la date et l’heure actuelles du système où PowerShell est exécuté.

Ce tutoriel présentera différentes méthodes pour formater une date et une heure dans PowerShell. Vous pouvez afficher la date et l’heure actuelles du système en utilisant le cmdlet Get-Date.

Get-Date

Sortie :

formater une date et une heure en powershell - sortie 1

La sortie ci-dessus est le formatage par défaut pour afficher la date et l'heure. Nous allons examiner différents exemples pour afficher la date et l’heure dans d’autres formats possibles.

Utiliser l’option -format pour formater une date et une heure dans PowerShell

L’option -Format dans PowerShell est un paramètre utilisé principalement avec le cmdlet Get-Date. Il permet aux utilisateurs de spécifier un format personnalisé pour afficher les informations de date et d’heure.

Cette option est essentielle pour les scripts et les commandes où la date et l’heure doivent être présentées dans un format spécifique, que ce soit pour le journalisation, l’affichage de l’interface utilisateur ou le traitement des données.

La commande suivante affiche la date et l'heure actuelles au format Mois-Jour-An et Heure:Minute:Seconde, respectivement.

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

Au départ, le cmdlet Get-Date est invoqué, ce qui est la manière de PowerShell de récupérer la date et l’heure actuelles du système.

Ensuite, nous appliquons le paramètre -Format, un aspect crucial de la commande, qui dicte comment ces données de DateTime sont présentées. La chaîne "MM/dd/yyyy HH:mm:ss" à l’intérieur du paramètre sert de spécificateur de format : MM formate le mois en un nombre à deux chiffres, dd fait de même pour le jour, yyyy représente l’année en format à quatre chiffres, HH formate l’heure au format de 24 heures, mm pour les minutes, et ss pour les secondes.

En exécutant cette commande, nous instruisons efficacement PowerShell à afficher la date et l’heure actuelles dans un format très spécifique et lisible par l’homme, adapté aux conventions et à la lisibilité courantes.

Sortie :

formater une date et une heure dans powershell - sortie 2

Lorsque vous souhaitez formater uniquement la date (sans l’heure) en utilisant l’option -Format dans le cmdlet Get-Date de PowerShell, vous spécifiez une chaîne de format qui inclut uniquement les composants de la date.

Get-Date -Format "dd/MM/yyyy"

Sortie :

formater une date et une heure dans PowerShell - sortie 3

Utiliser (Get-Date).ToString pour formater une date et une heure dans PowerShell

L’une des manières polyvalentes de formater DateTime est d’utiliser la méthode .ToString(). Cette méthode convertit l’objet DateTime en une représentation de chaîne, permettant des formats personnalisés et une bonne lisibilité.

(Get-Date).ToString("dd/MM/yyyy HH:mm:ss")

Dans cet exemple, nous commençons par récupérer la date et l’heure actuelles en utilisant Get-Date. Ensuite, nous utilisons immédiatement la méthode .ToString() sur cet objet.

La chaîne de format "dd/MM/yyyy HH:mm:ss" indique à PowerShell de formater la date avec le jour et le mois sous forme de deux chiffres, suivis d’une année à quatre chiffres, et de l’heure en heures (format 24 heures), minutes, et secondes.

Ce processus convertit efficacement le DateTime actuel en une chaîne qui représente la date et l’heure dans notre format spécifié, la rendant plus lisible et standardisée.

Sortie :

formater une date et une heure dans powershell - sortie 4

Sélectionner parmi tous les styles de formatage de date et d’heure en utilisant GetDateTimeFormats() dans PowerShell

La méthode GetDateTimeFormats() est utilisée pour obtenir un tableau de représentations sous forme de chaînes d’un objet DateTime dans différents formats.

Pour voir tous les formats de date et d'heure, vous pouvez utiliser la commande ci-dessous. Elle affiche un grand tableau de chaînes de styles de formatage pour la date et l’heure.

(Get-Date).GetDateTimeFormats()

Sortie :

formater une date et une heure dans PowerShell - sortie 5

Vous pouvez sélectionner l’un des styles de formatage de la liste du tableau avec []. Par exemple :

(Get-Date).GetDateTimeFormats()[7]

Ici, Get-Date récupère la date et l’heure actuelles en tant qu’objet DateTime. Ensuite, nous appelons la méthode .GetDateTimeFormats() sur cet objet, qui produit un tableau de divers formats de date et d’heure.

En utilisant [7], nous accédons spécifiquement au huitième élément de ce tableau, étant donné que l’indexation commence à 0. Cet élément correspond à l’un des formats de date standard définis dans le framework .NET, influencé par les paramètres régionaux du système

Sortie :

formater une date et une heure en powershell - sortie 6

Formater la date et l’heure à utiliser dans un en-tête HTTP dans PowerShell

Vous pouvez utiliser le spécificateur de format R ou r pour formater la date et l’heure pour une utilisation dans un en-tête HTTP. Cela affiche la date et l’heure au format RFC1123.

Le format RFC1123 est un format date-heure spécifique dérivé de la norme Internet RFC1123. Il représente les dates dans un format tel que Lun, 15 Juin 2009 20:45:30 GMT.

Ce format est crucial dans les communications web, en particulier dans les en-têtes HTTP, car il garantit que les informations de date et d’heure sont comprises de manière cohérente à travers différents systèmes et emplacements.

Get-Date -Format R

Sortie :

formater une date et une heure dans powershell - sortie 7

OU

(Get-Date).ToString("R")

Sortie :

formater une date et une heure dans powershell - sortie 8

À la fois Get-Date -Format R et (Get-Date).ToString("R") dans PowerShell sont utilisés pour formater les dates, spécifiquement au format date-heure RFC1123, qui est couramment utilisé dans les en-têtes HTTP et d’autres normes web.

Alors que Get-Date -Format R fournit une sortie rapide et directe, (Get-Date).ToString("R") permet des manipulations supplémentaires de l’objet DateTime avant de le formater.

Utiliser l’option UFormat pour formater une date et une heure dans PowerShell

Dans PowerShell, la méthode UFormat est une approche moins couramment utilisée mais toujours puissante pour formater les objets DateTime. Elle est inspirée du monde Unix/Linux, où la fonction strftime dans le langage C est largement utilisée pour formater le temps.

Cette méthode offre un ensemble différent de spécificateurs de format par rapport aux options de formatage standard de .NET DateTime et peut être particulièrement utile lors de l’utilisation d’environnements multiplateformes ou lorsque des timestamps de style Unix spécifiques sont requis.

$currentDateTime = Get-Date -UFormat "%d/%m/%Y %H:%M:%S"
$currentDateTime

Dans cet exemple, nous utilisons Get-Date pour récupérer la date et l’heure actuelles. En appliquant l’option -UFormat, nous spécifions que nous souhaitons formater ce DateTime dans un format de style Unix.

La chaîne de format %d/%m/%Y %H:%M:%S indique à PowerShell de formater la date en jour/mois/année et l’heure dans un format 24 heures avec des heures, des minutes et des secondes. La chaîne formatée est stockée dans $currentDateTime.

Cette méthode est particulièrement utile lorsque nous voulons aligner le format date-heure avec les systèmes Unix/Linux ou dans des scénarios de scripting multiplateformes.

Sortie :

formater une date et une heure dans PowerShell - sortie 9

Conclusion

Dans cet article, nous avons exploré plusieurs méthodes pour formater date et heure dans PowerShell. En commençant par le cmdlet Get-Date, nous avons présenté son rôle fondamental dans la récupération de la date et de l’heure actuelles du système.

Nous avons ensuite examiné l’option -Format, un outil polyvalent et essentiel pour personnaliser les affichages de date et d’heure dans les scripts et les tâches d’automatisation. Notre exploration a également inclus la méthode .ToString(), offrant une approche flexible pour convertir les objets DateTime en formats de chaînes personnalisés, idéale pour des besoins de formatage uniques.

De plus, nous avons discuté de la méthode GetDateTimeFormats(), qui fournit un large éventail d’options de formatage prédéfinies utiles pour respecter des préférences de formatage standard ou régionales. Enfin, nous avons approfondi l’option UFormat, une méthode inspirée des systèmes Unix/Linux, bénéfique pour les scripts interagissant avec de tels environnements ou nécessitant des timestamps de style Unix.

Vous aimez nos tutoriels ? Abonnez-vous à DelftStack sur YouTube pour nous aider à créer davantage de tutoriels vidéo de haute qualité. Abonnez-vous
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website