Comment Utiliser la Commande Date sur Linux ?

Par : TutorialsGrey, le 27 Décembre 2022

Dans ce tutoriel, nous allons passé en revue les bases de l'utilisation de la commande date sur une distribution basée sur Linux.

Vous pouvez utiliser la commande date pour afficher la date et l'heure actuelles sur votre système Linux. La commande vous permet de formater la sortie, d'afficher la date de dernière modification des fichiers, de définir la date et l'heure, et plus encore. C'est une commande incroyablement utile que nous recommandons vivement de prendre le temps d'apprendre.

Il existe de nombreuses façons d'utiliser cette commande, mais vous en aurez probablement besoin lors de la création de scripts bash qui nécessitent la date et l'heure actuelles. Vous pouvez également régler l'heure à l'aide de cette commande, mais il est peu probable que vous ayez à utiliser cette fonctionnalité.

Ce tutoriel vous présente la syntaxe, les options et plusieurs exemples d'utilisation de la commande date.

 

Syntaxe de la commande date

La syntaxe de la commande date est relativement simple et accepte deux arguments supplémentaires. L'exemple ci-dessous montre comment vous devrez structurer la commande.

date [OPTIONS] +[FORMAT]
  • [OPTIONS] est l'endroit où vous pouvez spécifier les options que vous voulez utiliser avec la commande date. Nous détaillons certaines options que vous pouvez utiliser plus bas sur cette page.
  • [FORMAT] est l'endroit où vous pouvez spécifier comment vous voulez que la sortie soit formatée. Nous aborderons quelques exemples plus loin sur cette page.

 

Options de la commande date

Il existe plusieurs options différentes que vous pouvez utiliser avec la commande date. Voici celles que vous êtes susceptible d'utiliser.

  • -d ou --date= STRING affichera l'heure décrite par "STRING". Par exemple, vous pouvez saisir "1 month ago" pour obtenir une date datant d'un mois.
  • --debug ajoute une note à la date analysée et envoie les avertissements sur stderr.
  • -f ou --file= DATEFILE est similaire à l'option --date mais accepte un fichier à la place. Il analysera chaque ligne du fichier spécifié (DATEFILE).
  • -I ou --iso-8601 FMT affiche la date et l'heure au format ISO 8601. FMT est optionnel et contrôle la précision de la date et de l'heure. Par exemple, --iso-8601=ns ou -Ins affichera la date et l'heure à la nanoseconde près.
  • -R ou --rfc-email affiche la date et l'heure au format RFC 5422.
  • --rfc-3339=FMT affiche la date et l'heure au format RFC 3339. FMT contrôle la précision de la date et de l'heure. Par exemple, --rfc-3339=date affichera uniquement la date.
  • -s ou --set= STRING définit l'heure telle que décrite par "STRING".
  • -r ou --reference= FILE affichera la dernière modification du fichier spécifié.
  • -u ou --utc ou --universal affichera le temps universel coordonné (UTC). Vous pouvez également utiliser cette option pour définir l'heure UTC.

 

Formatage de la date et de l'heure

Vous pouvez spécifier le format dans lequel vous souhaitez que la date et l'heure soient affichées dans le terminal. Dans cette section, nous abordons brièvement certains des modèles que vous pouvez utiliser.

Date

  • %a affiche le nom abrégé du jour de la semaine. Par exemple, Lun.
  • %A donne le nom complet du jour de la semaine. Par exemple, Lundi.
  • %b affiche le nom abrégé du mois. Par exemple, Jan.
  • %B affiche le nom complet du mois, par exemple janvier.
  • %C est similaire à %Y mais n'affiche que les deux premiers chiffres de l'année. Par exemple, 2022 sera 20.
  • %d affiche le jour du mois, par exemple 10 pour le 10e jour du mois.
  • %D affiche la date. Le format est le même qu'avec %m/%d/%y.
  • %F est similaire à %D, mais le format est le même que celui utilisé pour %Y-%m-%d.
  • %m affiche le mois en cours. Ainsi, le mois de mars sera 03.
  • %y affiche les deux derniers chiffres de l'année. Par exemple, 2022 sera 22.
  • %Y affiche l'année en cours.

Heure

  • %H indique l'heure en format 24 heures. Par exemple, 11 heures du soir sera 23.
  • %I indique l'heure en format 12 heures. Ainsi, 23 heures sera 11.
  • %M indique la minute actuelle, par exemple 10:54:02 sera 54.
  • %r affiche l'heure locale en format 12 heures. Par exemple, 04:21:02 PM.
  • %S indique la seconde actuelle, donc 10:54:02 sera 02.
  • %T affiche l'heure actuelle en 24 heures. C'est la même chose que d'utiliser %H:%M:%S.

 

Utilisation de la commande de date

Cette section présente plusieurs exemples d'utilisation de la commande date pour effectuer diverses tâches. Bien entendu, il existe d'autres tâches que vous pouvez effectuer à l'aide de la commande date, mais ces exemples devraient vous donner une bonne introduction.

L'utilisation de la commande date sans options renvoie la date et l'heure actuelles. L'exemple ci-dessous illustre l'utilisation de la commande date sans options.

dev@tutorialsgrey:~/ $ date
mar. 27 déc. 2022 09:12:25 WAT

 

Formatage de la sortie

Vous pouvez formater la sortie de la commande date en spécifiant une chaîne après le symbole plus (+). Plus tôt dans ce tutoriel, nous avons abordé certaines des différentes entrées que vous pouvez utiliser pour formater une chaîne de date. Vous trouverez ci-dessous quelques exemples qui utilisent ces chaînes de format.

L'utilisation de %D permet d'imprimer la date avec les chiffres séparés par une barre oblique. C'est la même chose que d'utiliser %m/%d/%y.

dev@tutorialsgrey:~/ $ date +"%D"
12/27/22

Dans cet exemple, nous utilisons plusieurs options de formatage. Vous pouvez utiliser une combinaison d'options pour formater la chaîne de date et d'heure comme vous le souhaitez.

  • %A affiche le jour de la semaine.
  • %d affiche le jour actuel du mois.
  • %B affiche le nom complet du mois.
  • %Y affiche l'année.
dev@tutorialsgrey:~/ $ date +"%A %d %B %Y"
mardi 27 décembre 2022

L'utilisation de %r permet d'afficher l'heure en 12 heures, comme le montre l'exemple ci-dessous. L'utilisation de %T permet d'afficher l'heure en 24 heures.

dev@tutorialsgrey:~/ $ date +"%r"
09:22:01

 

Modifier la date et l'heure

Vous pouvez modifier la date et l'heure du système en utilisant les options -s ou --set=. Vous pouvez spécifier l'horodatage exactement ou utiliser une expression comme "yesterday". Vous devrez également utiliser sudo pour utiliser l'option set.

Il est recommandé de n'utiliser cette option que si vous comprenez ce que vous faites.

Voici un exemple de définition de la date et de l'heure à l'aide de l'option -s et d'un horodatage.

date -s "2022-03-21 07:28:12"

Lorsque la commande s'exécute correctement, vous devriez voir une sortie similaire à l'exemple ci-dessous.

dev@tutorialsgrey:~$ sudo date -s "2022-03-21 07:28:12"
Lun 21 Mar 2022 07:28:12 WAT

Vous trouverez ci-dessous un exemple de définition de la date à l'aide de l'option -s et d'une chaîne. Cette chaîne définit la date à la date d'hier.

date -s "yesterday"

L'exécution de la commande ci-dessus produira un résultat similaire à l'exemple ci-dessous.

La date figurant sous la commande doit être celle d'hier.

dev@tutorialsgrey:~$ sudo date -s "yesterday"
lun. 29 déc 2022 09:32:06 WAT

 

Date de la dernière modification

Vous pouvez afficher la date de dernière modification d'un fichier en utilisant la commande date et l'option -r ou --reference=.

Dans l'exemple ci-dessous, nous utilisons l'option -r pour vérifier la date de dernière modification du fichier home.php dans notre répertoire de travail actuel.

date -r home.php

Vous devriez voir la date de la dernière modification dans le terminal après avoir entré la commande.

dev@tutorialsgrey:~/test$ date -r home.php
jeu. 20 oct. 2022 10:41:04 WAT

 

Afficher une date dans le passé

Vous pouvez utiliser la commande date pour afficher une date dans le passé. Pour ce faire, utilisez l'option --date et une CHAÎNE spécifiant la date que vous souhaitez afficher.

date --date="1 year ago"

Comme vous pouvez le voir, la commande renvoie la date d'il y a un an.

dev@tutorialsgrey:~/test$ date --date="1 year ago"
lun. 27 déc. 2021 09:39:23 WAT

Dans notre prochain exemple, nous afficherons la date d'hier.

date --date="yesterday"

Le résultat affichera la date d'hier.

dev@tutorialsgrey:~/test$ date --date="yesterday"
lun. 26 déc. 2022 09:43:19 WAT

 

Afficher une date dans le futur

Comme pour l'affichage d'une date dans le passé, vous pouvez également afficher une date dans le futur en utilisant l'option --date. Là encore, vous devrez saisir une phrase pour spécifier la date que vous souhaitez afficher. Vous trouverez ci-dessous quelques exemples d'affichage d'une date dans le futur.

L'exemple suivant demande la date dans un an à partir d'aujourd'hui.

date --date="1 year"

La sortie affichera la date de l'année prochaine.

dev@tutorialsgrey:~/test$ date --date="1 year"
mer. 27 déc. 2023 09:46:58 WAT

Dans l'exemple suivant, nous demandons la date de demain.

date --date="tomorrow"

La sortie affichera la date de demain.

dev@tutorialsgrey:~/test$ date --date="tomorrow"
mer. 28 déc. 2022 09:48:24 WAT

 

Avoir plus d'aide

Si vous avez besoin d'aide pour utiliser cette commande, vous pouvez utiliser plusieurs méthodes différentes pour obtenir plus d'informations.

La première méthode que nous vous recommandons d'utiliser est la commande man. La commande man vous permet d'afficher les pages de manuel de la commande donnée. Cette commande est incluse dans la plupart des distributions Linux.

man date

L'autre alternative est d'utiliser l'option --help avec la commande. L'utilisation de cette option permet à la commande d'afficher des informations utiles dans le terminal.

date --help

 

Conclusion

Vous devriez maintenant avoir une bonne idée de la façon dont vous pouvez utiliser la commande date pour afficher l'heure et la date dans le terminal. Vous pouvez également la trouver utile dans les scripts bash.

Il existe un grand nombre de commandes Linux que vous pouvez utiliser pour effectuer une grande variété de tâches sur une distribution basée sur Linux. C'est pourquoi nous vous recommandons vivement d'en apprendre autant que possible si vous envisagez d'administrer un système Linux.