linux:shell:manipulation_dates
Table des matières
Linux
Manipulation sur les dates
Commande 'date'
- Syntaxe :
$ date [+[format_options]]
- Exemples :
$ date Wed Jul 20 16:49:15 CEST 2022 $ date +%Y-%m-%d 2022-07-20
- Options de formatage
| Format | Description |
|---|---|
| +%a | Gives name of the weekday [Mon, Sun, Fri] |
| +%A | Gives name of the weekday [Monday, Sunday, Friday] |
| +%b | Gives name of the month [Jan, Feb, Mar] |
| +%B | Gives name of the month [January, February, March] |
| +%d | Displays day of the month [05] |
| +%D | Displays current date MM/DD/YY format [11-01-21] |
| +%F | Shows date in YYYY-MM-DD format [2021-11-01] |
| +%H | Shows hour in 24-hour format [22] |
| +%I | Shows hour in 12-hour format [11] |
| +%j | Displays the day of the year [001 – 366] |
| +%m | Displays the number of the month [01-12] |
| +%M | Displays minutes [00-59] |
| +%S | Displays seconds [00-59] |
| +%N | Displays in Nanoseconds |
| +%T | Displays time as HH:MM:SS [in 24-hour format] |
| +%u | Day of the week [1-7] 1 is Monday, 6 is Saturday |
| +%U | Shows week number of the year [00-53] |
| +%Y | Displays year YYYY [2021] |
| +%Z | Displays Time zone |
| Format (avec indicateur) | Description |
|---|---|
| -d “Yesterday” | Print yesterday's date and time. |
| -d “tomorrow” | Print Tomorrow date and time. |
| -d “tomorrow -10 days” | Find what is the date and time before 10 days from now. |
| -d “last month” “%B” | Find last month. |
| -d “next month” “%B” | Find next month. |
| -d “last year” “+%Y” | Find last year. |
| -d “next year” “+%Y” | Find next year. |
| -d “Today +2 days” “+%A” | Forecast the weekday |
Afficher la date depuis un timestamp
$ date -d @1381764199 Mon Oct 14 17:23:19 CEST 2013
Nombre de jours entre 2 dates données
$ echo $(( ( $(date -d "2022-07-20" "+%s") - $(date -d "2022-01-01" "+%s") ) / 86400)) 199 # ou $ echo $(($((`date +%s --date 01/10/2016`-`date +%s --date 01/10/2015`))/86400)) jours 365 jours
Identifier une année bissextile
$ for y in {2000..2010}; do date -d $y-02-29 &>/dev/null && echo "$y est bissextile"; done 2000 est bissextile 2004 est bissextile 2008 est bissextile
Modifier la date et l'heure du système
$ date --set="Thu Nov 12 13:06:59 IST 2020" Thu Nov 12 13:06:59 IST 2020 $ hwclock --systohc # synchronise le changement avec l'horloge matérielle
linux/shell/manipulation_dates.txt · Dernière modification : 2022/10/17 15:20 de zandor
