Présentation
Linux date
La commande affiche et définit la date et l'heure du système. Cette commande permet également aux utilisateurs d'imprimer l'heure dans différents formats et de calculer des dates futures et passées.
Lisez la suite pour savoir comment utiliser la date
commande sous Linux.
Prérequis
- Un système exécutant Linux
- Un compte utilisateur avec des privilèges root
- Accès à une fenêtre de terminal/ligne de commande
Syntaxe de la commande Linux date
La syntaxe de la date
la commande est :
date [option]... [+format]
Comment utiliser la commande date sous Linux
Pour afficher l'heure et la date actuelles du système, saisissez la date
commande :
date
La sortie affiche le jour de la semaine, le jour du mois, le mois, l'année, l'heure actuelle et le fuseau horaire. Par défaut, la date
commande est définie sur le fuseau horaire du système d'exploitation.
Le -d
L'option permet aux utilisateurs d'opérer à une date précise. Par exemple, nous pouvons taper la commande suivante :
date -d "2000-11-22 09:10:15"
Vous pouvez utiliser le --date
commande pour afficher la chaîne de date donnée dans le format d'une date. Cette commande n'affecte pas les valeurs de date et d'heure réelles du système et imprime uniquement la date demandée. Par exemple :
date --date="09/10/1960"
Options de format de commande de date Linux
Pour formater la date
sortie de la commande, vous pouvez utiliser des caractères de contrôle précédés d'un +
signe. Les contrôles de format commencent par % symbole et sont remplacés par leurs valeurs actuelles.
Ici, le %Y le caractère est remplacé par l'année en cours, %m avec le mois, et %d avec le jour du mois :
date +"Year: %Y, Month: %m, Day: %d"
Voici deux autres exemples de mise en forme :
date "+DATE: %D%nTIME: %T"
date +"Week number: %V Year: %y"
Ce sont les caractères de formatage les plus courants pour la date
commande :
%D
– Afficher la date au format mm/jj/aa%Y
– Année (par exemple, 2020)%m
– Mois (01-12)%B
– Nom long du mois (par exemple, novembre)%b
– Nom court du mois (par exemple, Nov)%d
– Jour du mois (par exemple, 01)%j
– Jour de l'année (001-366)%u
– Jour de la semaine (1-7)%A
– Nom complet du jour de la semaine (par exemple, vendredi)%a
– Nom abrégé du jour de la semaine (par exemple, vendredi)%H
– Heure (00-23)%I
– Heure (01-12)%M
– Minutes (00-59)%S
– Seconde (00-60)
Pour voir toutes les options de formatage, exécutez date --help
ou la commande man man date
dans votre terminal.
Définir ou modifier la date sous Linux
Pour modifier l'horloge système manuellement, utilisez la commande set. Par exemple, pour définir la date et l'heure sur 13 mai 2010 à 17h30 , saisissez :
date --set="20100513 05:30"
La plupart des distributions Linux ont l'horloge système synchronisée à l'aide de ntp
ou le systemd-timesyncd
services, soyez donc prudent lorsque vous réglez l'horloge manuellement.
Afficher les dates passées
Utilisez le --date
option pour afficher les dates passées sous Linux. La date
la commande accepte des valeurs telles que "tomorrow"
, "Friday"
, "last Friday"
, "next Friday"
, "next week"
, et similaires. Utilisez donc les chaînes suivantes pour imprimer les dates passées : :
date --date="2 year ago"
date --date="yesterday"
date --date="10 sec ago"
Afficher les dates futures
Le --date
L'option peut également afficher les dates futures. Comme pour les dates passées, vous pouvez saisir des chaînes pour imprimer les dates à venir :
date --date="next monday"
date --date="4 day"
date --date="tomorrow"
Afficher la chaîne de date à la ligne du fichier
Le --file
L'option affiche la chaîne de date présente sur chaque ligne du fichier. Contrairement à --date
option, --file
peut présenter plusieurs chaînes de date sur chaque ligne.
Ceci est la syntaxe pour le --file
commande :
date --file=file_name.txt
Ici, nous utilisons la commande cat pour ajouter des dates à un fichier, puis les imprimer avec la commande date :
Afficher l'horodatage de la dernière modification d'un fichier de date
Lorsque vous utilisez le -r
option, la date
La commande affiche l'heure de la dernière modification d'un fichier. Par exemple, la commande suivante imprime la dernière fois que le fichier hosts a été modifié :
date -r /etc/hosts
Remplacer un fuseau horaire
Par défaut, la date
la commande utilise le fuseau horaire défini dans /etc/localtime
. Pour utiliser un fuseau horaire différent dans l'environnement, définissez le TZ
variable selon le fuseau horaire souhaité.
Par exemple, pour passer à l'heure de New York, saisissez :
TZ='America/New_York' date
Tapez la date
commande pour ramener le système à son fuseau horaire par défaut. Pour voir tous les fuseaux horaires disponibles, utilisez timedatectl list-timezones
commande.
La date
La commande peut également afficher l'heure locale d'un fuseau horaire différent. Par exemple, pour afficher l'heure locale de 16h30 lundi prochain sur la côte est australienne, tapez :
date -d 'TZ="Australia/Sydney" 04:30 next Monday'
Utiliser la date avec d'autres commandes
Vous pouvez utiliser la date
commande pour créer des noms de fichiers contenant l'heure et la date actuelles. L'entrée ci-dessous crée un fichier MySQL de sauvegarde au format de la date actuelle :
mysqldump database_name > database_name-$(date +%Y%m%d).sql
Une autre utilisation courante de la date
la commande est dans les scripts shell. Ci-dessous, nous attribuons la sortie de date
au date_now
variables :
date_now=$(date "+%F-%H-%M-%S")
Utiliser l'heure d'époque Unix (convertisseur d'époque)
Vous pouvez utiliser la date
commande en tant que convertisseur d'époque. Epoch, ou horodatage Unix, est le nombre de secondes qui se sont écoulées depuis le 1er janvier 1970 à 00:00:00 UTC.
Pour afficher le nombre de secondes entre l'époque et le jour actuel, utilisez le %s
contrôle de format :
date +%s
Pour voir combien de secondes se sont écoulées entre l'époque et une date spécifique, saisissez :
$ date -d "1984-04-08" +"%s"