Ich habe seit dem 17. November 2014 an meiner jetzigen Position angefangen zu arbeiten. Ich würde gerne wissen, wie viele Tage bis jetzt vergangen sind. Irgendwelche Ideen, wie man mit Linux eine einfache und nette Lösung findet?
dateutil
.
Ich habe seit dem 17. November 2014 an meiner jetzigen Position angefangen zu arbeiten. Ich würde gerne wissen, wie viele Tage bis jetzt vergangen sind. Irgendwelche Ideen, wie man mit Linux eine einfache und nette Lösung findet?
dateutil
.
Antworten:
echo $(( (`date +%s` - `date +%s -d '2014/11/17'`) / 86400 )) days ago
date -d 2014/11/17
ein Zeitstempel von Mitternacht, da keine Zeit angegeben ist), spielt die Sommerzeit keine Rolle.
Nun, auf den ersten Blick:
$ date --date="-239 days"
Mon Nov 17 15:25:40 CET 2014
In einem Skript (nicht sehr effizient, aber ... vielleicht handhabt es Schaltsekunden ?;))
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
wird verstanden:date --date="239 days ago"
LC_ALL=ru_RU.utf8 date --date="239 дней назад"
gibt mir das gleiche Ergebnis wie date --date="239"
.
Sie können die awk Velour-Bibliothek verwenden :
$ velour -n 'print t_secday(t_now() - t_utc(2014, 9, 8))'
1385.54
Oder:
$ velour -n 'print t_secday(t_now() - t_utc(ARGV[1], ARGV[2], ARGV[3]))' 2014 9 8
1385.54