Formater la date et l'heure dans Bash
-
Utilisation du
printf
intégré pour formater la date et l’heure dans Bash -
Utilisation de la commande
date
Format Date et heure dans Bash
Pour formater une date ou une heure dans un script shell Linux, utilisez la commande date standard.
La même commande peut être utilisée avec le script shell. La commande date sous Linux affiche et modifie la date et l’heure du système.
Les utilisateurs peuvent également utiliser cette commande pour imprimer l’heure dans différents formats et calculer les dates futures et précédentes.
Utilisation du printf
intégré pour formater la date et l’heure dans Bash
Il est préférable d’utiliser le formateur de date intégré printf
au lieu du formateur de date externe dans une version bash supérieure ou égale à 4.2
.
Pour obtenir au format YYYY-MM-DD
:
$ printf '%(%Y-%m-%d)T\n' -1
-1
indique l’heure actuelle.
Production :
2021-12-21
Nous pouvons également écrire la commande ci-dessus comme suit :
$ printf '%(%F)T\n' -1
Production :
2021-12-21
Nous pouvons enregistrer l’heure actuelle en utilisant -v
et en spécifiant le nom de la variable. Pour enregistrer l’heure courante dans une variable cdate
et l’imprimer, on peut faire ceci :
$ printf -v cdate '%(%F)T' -1
$ echo $cdate
La commande ci-dessus a capturé la date actuelle en tant que variable et l’a stockée dans cdate
, et echo
imprimera la valeur de la variable.
Production :
2021-12-21
Utilisation de la commande date
Format Date et heure dans Bash
On peut utiliser la commande date
pour les versions bash inférieures à 4.2
.
Pour afficher la date du jour au format MM-DD-YY
:
$ date +"%m-%d-%y"
Le symbole +
indique une chaîne de format définie par l’utilisateur qui spécifie comment la date et l’heure doivent être affichées.
Production :
12-21-21
Pour convertir l’année en quatre chiffres, remplacez y
par Y
.
$ date +"%m-%d-%Y"
Production :
12-21-2021
Nous pouvons également faire ce qui suit pour imprimer la date actuelle au format YYYY-MM-DD
.
$ date -I
Production :
2021-12-21
Pour afficher l’heure uniquement :
$ date +"%T"
Production :
13:01:00
Pour afficher l’heure au format HH:MM
:
$ date +"%H-%M"
Production :
13-02
Pour stocker la date actuelle dans une variable shell, nous pouvons procéder comme suit :
$ cdate=$(date +"%m-%d-%Y")
$ echo $cdate
Nous avons capturé la date actuelle et l’avons stockée dans cdate
. echo
imprime la valeur cdate
.
Production :
12-21-2021
Pour ajouter N
jours dans la date
, on utilise la commande suivante :
date -d="YYYY-MM-DD+N days"
Prenons un exemple.
$ date -d "2021-12-21+20 days"
Production :
Mon 10 Jan 2022 12:00:00 AM