9 Exemples pratiques de la commande de date Linux

Rencontrez la commande de date Linux. Non, cela ne peut pas vous offrir une soirée romantique. Mais il peut mettre en forme la date en haut d'une lettre d'amour que vous avez écrite dans le terminal. Assez proche? Commençons.

Lorsque vous créez des scripts dans Bash, vous devrez inévitablement imprimer une date ou une heure, et cette date ou cette heure devra souvent être dans un format spécifique pour répondre aux exigences d'autres fonctions. C'est à ce moment que la commande de date entre en jeu.

Comme vous le verrez, la commande de date sous Linux est à la fois simple et polyvalente, ce qui signifie qu'elle acceptera toutes sortes d'entrées et générera des dates dans une multitude de formats. Il a également d'autres fonctions spéciales pour diverses tâches informatiques liées au temps. L'apprentissage des options et de la syntaxe de la date vous rendra certainement plus habile en script, et peut-être plus ponctuel.

Syntaxe de base de la commande Date

La syntaxe de base de la commande date est la suivante:

 date [OPTION]... [+FORMAT]

Cela signifie qu'après avoir entré la date , vous pouvez entrer une option, comme -d ou -s , pour appeler une fonction particulière, ce que nous expliquerons ci-dessous.

Vous pouvez également les suivre avec des chaînes de formatage, qui commencent toujours par un caractère + . Ces chaînes utilisent des caractères de mise en forme spécifiques, également répertoriés ci-dessous, pour définir la sortie.

Exemples pratiques de commande de date Linux

Vous pouvez utiliser la commande date de plusieurs manières. Considérons les cas d'utilisation les plus courants et les plus utiles de la même chose.

1. Obtenez la date et l'heure actuelles

Vous pouvez obtenir la date et l'heure locales actuelles dans le format par défaut en passant la commande de date seule.

 $ date
Mon 19 Apr 2021 12:41:17 PM CDT

Comme vous pouvez le voir, la date vous donne les informations de date et d'heure pertinentes dans un format simple et prévisible.

2. Obtenez une date passée ou future

Disons que dans votre script, vous devez calculer l'heure et la date dans exactement une semaine. La commande de date vous a couvert. Exécutez cette commande, en utilisant l'option -d pour obtenir des informations détaillées sur les dates futures:

 $ date -d "next week"
Tue 27 Apr 2021 05:21:07 PM CDT

L'option -d , abréviation de date, est l'endroit où la commande date brille vraiment. Il acceptera une variété de chaînes de date personnalisées; ils peuvent être d'ordre technique, comme 20200315, 15.03.20, ou lisible comme le 15 mars 2020. Mais vous pouvez également utiliser des termes relatifs, comme demain , hier , dimanche prochain , etc. Jouez avec et voyez comment la date interprète différentes chaînes d'entrée.

3. Mettre en forme une date

Vous avez peut-être remarqué dans les deux exemples précédents, que la date est par défaut un format d'heure très spécifique. Alors que faire si vous en avez besoin dans un format différent?

Vous pouvez formater votre sortie de la même manière que la commande printf . Par exemple, vous pouvez imprimer l'année en cours avec cette commande:

 date +"Year: %Y"

Le + signale que vous voulez une chaîne formatée, et tout ce qui apparaît ensuite à l'intérieur des guillemets , la date sera traitée et formatée pour la sortie.

Voici une liste des caractères de mise en forme que vous êtes le plus susceptible d'utiliser:

Caractère de formatage Production
% H Heure (00-24)
%JE Heure (01-12)
% M Minute (00-59)
% S Deuxième (00-60)
% p AM ou PM
%UNE Nom complet du jour de la semaine (par exemple, dimanche)
%une Nom abrégé du jour de la semaine (par exemple, Sun)
% w Numéro du jour de la semaine (0-6)
%ré Jour du mois (01-31)
% j Jour de l'année (001-366)
% B Nom complet du mois (par exemple, janvier)
% b Nom abrégé du mois (par exemple, janvier)
% m Numéro du mois (01-12)

Vous pouvez obtenir une liste complète des caractères de formatage en utilisant l'option –help dans le terminal.

 date --help

4. Obtenez le jour de la semaine

Une utilisation très courante et pratique du formatage de la date consiste à obtenir le jour de la semaine pour une date donnée. Par exemple, pour vérifier le jour de la semaine du 4 novembre 1995, entrez une commande similaire à celle-ci:

 $ date -d "1996-04-11" +"%A"
Friday

L'option -d indique que vous souhaitez une date spécifique, la chaîne "1996-04-11" indique la date souhaitée et la mise en forme + "% A" indique que vous voulez le jour de la semaine dans la sortie. N'oubliez pas que la chaîne de date peut être dans de nombreux formats, pas seulement celui spécifié ici.

5. Obtenez le temps universel coordonné

En émettant l'indicateur -u , vous pouvez obtenir l'heure actuelle en temps universel coordonné (UTC).

 $ date -u
Wed 21 Apr 2021 12:46:59 PM UTC

6. Sortie de l'heure locale dans un autre fuseau horaire

Si vous avez besoin d'obtenir une date dans un autre fuseau horaire, vous pouvez le faire en définissant la variable d'environnement TZ = avant la commande de date.

Par exemple, vous pouvez voir la date et l'heure actuelles en heure normale des Rocheuses (MST) avec la commande suivante:

 $ TZ=MST date
Tue 20 Apr 2021 03:45:29 PM MST

Pour vos besoins, remplacez simplement MST par les initiales du fuseau horaire que vous préférez. Vous pouvez également choisir d'utiliser la notation UTC. Par exemple, pour obtenir le même fuseau horaire, remplacez MST par UTC + 7 .

De plus, vous pouvez nommer un continent et une grande ville pour obtenir l'heure locale de cette ville. Par example:

 $ TZ=America/Phoenix date
Tue 20 Apr 2021 03:45:29 PM MST

7. Obtenir l'heure de la dernière modification d'un fichier

Si vous créez des sauvegardes, par exemple, vous aurez souvent besoin d'obtenir la dernière date de modification d'un fichier. Vous pouvez le faire en passant l'option -r et en nommant un fichier.

 $ date -r /etc/shadow
Wed 14 Apr 2021 07:53:02 AM CDT

Vous pouvez également modifier les horodatages d'un fichier à l' aide de la commande touch sous Linux .

8. Sortie et conversion de l'heure d'époque

Vous pouvez calculer le nombre de secondes depuis l'époque Unix avec la commande suivante:

 $ date +%s
1618955631

Vous pouvez également inverser le processus et convertir l'heure Unix en un format lisible par l'homme en utilisant l'option -d et le caractère @ .

 $ date -d @1618955631
Tue 20 Apr 2021 04:53:51 PM CDT

Le calcul de l'heure Unix est utile si vous avez besoin d'une seconde exacte qui maintiendra définitivement les autres appareils synchronisés.

9. Réglez temporairement l'heure du système

Vous pouvez modifier votre horloge système depuis le terminal avec la commande date en passant l'argument -s suivi de l'heure souhaitée. Par exemple, vous pouvez régler l'horloge système sur 24 heures dans le futur avec la commande suivante:

 date -s "tomorrow"

Notez que vous aurez besoin des privilèges sudo pour passer cette commande. De plus, le changement ne sera probablement pas persistant (ce qui signifie que votre horloge reviendra à l'heure précédente après un redémarrage) car la plupart des distributions utilisent d'autres utilitaires pour gérer votre horloge système qui remplaceront le changement au démarrage.

Commande de date Linux expliquée

Comme dans la vie, vous ne pouvez pas sortir du temps sous Linux. C'est pourquoi il est crucial que vous compreniez comment le formater et l'utiliser, via la commande date. Une chose que vous êtes sûr de rencontrer dans la gestion de fichiers Linux est les divers horodatages que les fichiers portent avec eux.