date

Affiche ou définit la date du système

   date affiche ou définit la date du système, invoqué sans format de date revient à l'invoquer avec un format par défaut que dépend de LC_TIME Normalement, date utilise les règles de temps indiqué par TZ, ou les règles par défaut du système si TZ n'est pas utilisé. Si un argument commence par +, date affiche la date courante ( ou la date spécifié par l'option --date) dans le format spécifié par l'argument, qui est similaire à la fonction strftime. Excepté pour les spécifieurs de conversion qui commence avec %, les caractères sont affichés tels quels.

Spécifieurs de conversion de temps

%H heure ('00'...'23')
%I heure ('01'...'12')
%k heure ('0'...'23')
%l heure ('1'...'12')
%M minute ('00'...'59')
%N nanosecondes (`000000000'...`999999999')
%p équivalent local à AM ou PM. vide dans beaucoup de locales
%P Idem mais en minuscule
%r heure locale sur 12 heures
%R identique à %H:%M
%s seconde depuis le 1.1.1970
%S Secondes (`00'...`60')
%T identique à %H:%M:%S
%X représentation de l'heure locale.
%z time RFC 2822. Zone en style numérique. ex: +0200. ou rien si le time zone ne peut pas être déterminé.
%:z RFC 3339. Zone en style numérique. ex: +02:00. ou rien si le time zone ne peut pas être déterminé.
%::z time zone à la plus proche seconde. ex: +02:00:00, ou rien si le time zone ne peut pas être déterminé.
%:::z time zone utilisant le précision minimal nécessaire, ou rien si le time zone ne peut pas être déterminé.
%Z abbréviation du time zone, ou rien si le time zone ne peut pas être déterminé.

Spécifieurs de conversion de date

%a Abréviation du nom du jour de la semaine
%A Nom du jour de la semaine
%b Abréviation du nom du mois
%B Nom du mois
%c Date et heure locale
%C siècle. Identique à %Y mais sans les 2 dernier chiffres.
%d Jour du mois
%D identique à %m/%d/%y
%e jour du mois, identique à %_d
%F Date au format iso 8601. identique à %Y-%m-%d
%g Année, sans le siècle.
%G Année, identique à %Y
%h identique à %b
%j jour de l'année
%m mois
%u jour de la semaine ('1'...'7') 1 correspond à lundi
%U semaine de l'année
%V semaine ISO de l'année. Si la semaine du 1er Janvier à au moins 4 jours dans la nouvelle année, c'est la semaine 1 de la nouvelle année, sinon la 53eme semaine de l'année précédente.
%w jour de la semaine ('0'...'6') 0 correspond à dimanche
%W semaine de l'année avec lundi comme premier jour de la semaine
%x date locale, identique à %d/%m/%Y
%y 2 derniers chiffres de l'année.
%Y année

Spécifieurs de conversion litéral

%% un %
%n newline
%t tabulation horizontale

Padding et autres flags

   date remplis normalement les champs par des 0

- Ne remplis pas les champs par des 0.
_ Remplis avec des espaces
0 remplis avec des 0
^ met les caractères en majuscule si possible
# oppose la casse si possible.
0 Ce chiffre permet de spécifier la largeur du champs

Régler l'heure du système

   Si un argument ne commence pas par +, date définis le temps du système. Les options --date et --set ne peuvent pas être utilisés avec cet argument. --universal peut être utilisé pour indiquer que l'heure est relative à UTC au lieu de du time zone local

MM mois
DD jour dans le mois
hh heure
mm minutes
CC 2 premiers chiffres de l'année
YY 2 derniers chiffres de l'année
ss secondes

OPTIONS

-d DATESTR, --date=DATESTR affiche la date et l'heure spécifié par DATESTR au lieu de l'heure courante. DATESTR peut être de plusieurs formes. Il contient le nom des mois, time zone, am et pm, yesterday etc...
-f DATEFILE, -file=DATEFILE utilise chaque ligne du fichier et affiche la date et l'heure comme pour -d. si DATE vaut '-', utilise l'entrée standard.
-r FILE, --reference=FILE affiche la date et l'heure du mtime du fichier spécifié.
-R, --rfc-822, --rfc-2822 Affiche la date et l'heure en utilisant le format %a, %d %b %Y %H:%M:%S%z
--rfc-3339=TIMESPEC Affiche la date en utilisant un format spécifié par la RFC 3339. Ce format est toujours utilisatable par -d et -f. TIMESPEC peut être:

        date Affiche juste la date complète, identique à %Y-%m-%d
        seconds affiche la date complète et l'heure complète séparé par un espace. Identique à %Y-%m-%d %H:%M:%S%:z
        ns idem, mais affiche les nanosecondes. identique à %Y-%m-%d %H:%M:%S.%N%:z

-s DATESTR, --date=DATESTR Définit la date et l'heure à DATESTR.
-u, --utc, --universal Utilise UTC

Exemples

affiche la date d'il y'a 2 jours:
date --date='2 days ago'
Affiche la date d'il y'a 3mois et 1 jour:
date --date='3 months 1 day'
Affiche le jour de noêl:
date --date='25 Dec' +%j
Affiche le nom du mois et le jour courant:
date '+%B %d'
afficher la date et l'heure sans remplir de 0:
date -d 1may '+%B %-d'
définis l'heure système en la reculant de 2 minutes:
date --set='+2 minutes'
Convertir une date en nombre de secondes depuis le 1/1/1970:
date --date='1970-01-01 00:02:00 +0000' +%s