La commande Date est utile pour afficher la date dans plusieurs formats. Il vous permet également de définir la date et l'heure du système.
Cet article explique quelques exemples sur la façon d'utiliser la commande date avec des exemples pratiques.
Lorsque vous exécutez la commande date sans aucune option, elle affichera la date et l'heure actuelles comme indiqué ci-dessous.
$ date Mon May 20 22:02:24 PDT 2013
1. Afficher la date à partir d'une valeur de chaîne à l'aide de l'option –date
Si vous avez une valeur de date ou d'heure statique dans une chaîne, vous pouvez utiliser l'option -d ou –date pour convertir la chaîne d'entrée au format de date, comme indiqué ci-dessous.
Veuillez noter que cela n'utilise pas la date et l'heure actuelles. À la place, il utilise la valeur de date et d'heure que vous transmettez sous forme de chaîne.
Les exemples suivants prennent une chaîne de date d'entrée uniquement et affichent la sortie au format date. Si vous ne spécifiez pas d'heure, il utilise 00:00:00 pour l'heure.
$ date --date="12/2/2014" Tue Dec 2 00:00:00 PST 2014 $ date --date="2 Feb 2014" Sun Feb 2 00:00:00 PST 2014 $ date --date="Feb 2 2014" Sun Feb 2 00:00:00 PST 2014
L'exemple suivant utilise une chaîne de date et d'heure en entrée et affiche la sortie au format date.
$ date --date="Feb 2 2014 13:12:10" Sun Feb 2 13:12:10 PST 2014
2. Lire les modèles de date à partir d'un fichier à l'aide de l'option –file
Ceci est similaire à l'option -d ou -date dont nous avons parlé ci-dessus. Mais, vous pouvez le faire pour plusieurs chaînes de date. Si vous avez un fichier qui contient diverses chaînes de date statiques, vous pouvez utiliser l'option -f ou –file comme indiqué ci-dessous.
Dans cet exemple, nous pouvons voir que datefile contient 2 chaînes de date. Chaque ligne de datefile est analysée par la commande date et la date est sortie pour chaque ligne.
$ cat datefile Sept 9 1986 Aug 23 1987 $ date --file=datefile Tue Sep 9 00:00:00 PDT 1986 Sun Aug 23 00:00:00 PDT 1987
3. Obtenir la date relative à l'aide de l'option –date
Vous pouvez également utiliser la commande date pour obtenir une date future en utilisant des valeurs relatives.
Par exemple, les exemples suivants obtiennent la date de lundi prochain.
$ date --date="next mon" Mon May 27 00:00:00 PDT 2013
Si string=@est donné à la commande date, alors la commande date convertit les secondes depuis l'époque (1970-01-01 UTC) en une date.
Il affiche la date à laquelle 5 secondes se sont écoulées depuis l'époque 1970-01-01 UTC :
$ date --date=@5 Wed Dec 31 16:00:05 PST 1969
Il affiche la date à laquelle 10 secondes se sont écoulées depuis l'époque 1970-01-01 UTC :
$ date --date=@10 Wed Dec 31 16:00:10 PST 1969
Il affiche la date à laquelle 1 minute (c'est-à-dire 60 secondes) s'est écoulée depuis l'époque 1970-01-01 UTC :
$ date --date=@60 Wed Dec 31 16:01:00 PST 1969
4. Afficher la date passée
Vous pouvez afficher une date passée à l'aide de la commande -date. Quelques possibilités sont présentées ci-dessous.
$ date --date='3 seconds ago' Mon May 20 21:59:20 PDT 2013 $ date --date="1 day ago" Sun May 19 21:59:36 PDT 2013 $ date --date="yesterday" Sun May 19 22:00:26 PDT 2013 $ date --date="1 month ago" Sat Apr 20 21:59:58 PDT 2013 $ date --date="1 year ago" Sun May 20 22:00:09 PDT 2012
5. Réglez la date et l'heure à l'aide de l'option -set
Vous pouvez définir la date et l'heure de votre système à l'aide de l'option -s ou -set comme indiqué ci-dessous.
Dans cet exemple, il affichait initialement l'heure sous la forme 20:09:31. Nous avons ensuite utilisé la commande date pour le changer en 21:00:00.
$ date Sun May 20 20:09:31 PDT 2013 $ date -s "Sun May 20 21:00:00 PDT 2013" Sun May 20 21:00:00 PDT 2013 $ date Sun May 20 21:00:05 PDT 2013
5. Afficher le temps universel à l'aide de l'option -u
Vous pouvez afficher la date au format UTC en utilisant l'option -u, ou –utc, ou –universal comme indiqué ci-dessous.
$ date Mon May 20 22:07:53 PDT 2013 $ date -u Tue May 21 05:07:55 UTC 2013
6. Afficher l'heure de la dernière modification à l'aide de l'option -r
Dans cet exemple, l'heure actuelle est 20:25:48
$ date Sun May 20 20:25:48 PDT 2013
L'horodatage du fichier de date est modifié à l'aide de la commande touch. Cela a été fait quelques secondes après la sortie de la commande de date ci-dessus.
$ touch datefile
L'heure actuelle après la commande tactile ci-dessus est 20:26:12
$ date Sun May 20 20:26:12 PDT 2013
Enfin, utilisez l'option -r de la commande date pour afficher le dernier horodatage modifié d'un fichier, comme indiqué ci-dessous. Dans cet exemple, il affiche l'heure de la dernière modification du fichier de date sous la forme 20:25:57. Il se situe quelque part entre 20:25:48 et 20:26:12 (lorsque nous exécutons la commande tactile ci-dessus pour modifier l'horodatage).
$ date -r datefile Sun May 20 20:25:57 PDT 2013
7. Divers formats de commande de date
Vous pouvez utiliser l'option de formatage pour afficher la commande de date dans différents formats en utilisant la syntaxe suivante :
$ date +%<format-option>
Le tableau suivant affiche diverses options de formatage de la commande de date.
Options de mise en forme | Objectif de l'option | Sortie | date + %a | Affiche le nom du jour de la semaine en bref (comme lundi, mardi, mercredi) | jeu | date + %A | Affiche le nom du jour de la semaine en entier (comme lundi, mardi) | jeudi | date +%b | Affiche le nom du mois en bref (comme Jan, Feb, Mar ) | février | date +%B | Affiche le nom du mois en entier (comme janvier, février) | Février | date + %d | Affiche le jour du mois (par exemple, 01) | 07 | date + %J | Affiche la date actuelle ; affiché en MM/JJ/AA | 02/07/13 | date + %F | Affiche la date ; affiché au format AAAA-MM-JJ | 2013-02-07 | date +%H | Affiche l'heure au format (00..23) | 23 | date +%I | Affiche le format heure (01..12) | 11 | date +%j | Affiche le jour de l'année (001..366) | 038 | date +%m | Affiche le mois (01..12) | 02 | date + %M | Affiche les minutes (00..59) | 44 | date + %S | Affiche les secondes (00..60) | 17 | date + %N | Affiche les nanosecondes (000000000..999999999) | 573587606 | date +%T | Affiche l'heure ; affiché sous la forme HH:MM:SS Remarque :Heures au format 24 | 23:44:17 | date +%u | Affiche le jour de la semaine (1..7) ; 1 est lundi | 4 | date +%U | Affiche le numéro de semaine de l'année, avec dimanche comme premier jour de la semaine (00..53) | 05 | date + %Y | Affiche l'année complète, c'est-à-dire AAAA | 2013 | date + %Z | abréviation alphabétique du fuseau horaire (par exemple, EDT) | EST |
---|