Ho iniziato a lavorare nella mia posizione attuale dal 17 novembre 2014. Vorrei sapere da quanti giorni sono passati. Qualche idea su come usare Linux per trovare una soluzione semplice e piacevole?
dateutil
.
Ho iniziato a lavorare nella mia posizione attuale dal 17 novembre 2014. Vorrei sapere da quanti giorni sono passati. Qualche idea su come usare Linux per trovare una soluzione semplice e piacevole?
dateutil
.
Risposte:
echo $(( (`date +%s` - `date +%s -d '2014/11/17'`) / 86400 )) days ago
date -d 2014/11/17
dà un timestamp di mezzanotte perché non c'è tempo menzionato) DST non importa.
Bene, a prima vista:
$ date --date="-239 days"
Mon Nov 17 15:25:40 CET 2014
In uno script (non molto efficiente, ma ... forse gestisce i secondi bisestili?;))
i=0
result=""
while [ "$result" != "20141117" ]
do
i=$((i+1))
result=$(date --date="-$i days" +%Y%m%d)
done
echo "$i" days have passed since "$result"
ago
si capisce:date --date="239 days ago"
LC_ALL=ru_RU.utf8 date --date="239 дней назад"
mi dà lo stesso risultato di date --date="239"
.
Ecco un esempio con PHP:
<?php
$o1 = date_create('2014-11-17');
$o2 = date_create();
$o3 = date_diff($o2, $o1);
echo 'days: ', $o3->days, "\n";
Risultato:
days: 1927