Date-Kommando nutzen

David1979

Mitglied
Thread Starter
Dabei seit
24.02.2022
Beiträge
5
Reaktionspunkte
0
Liebe Community,

ich bekomme es einfach nicht hin, diesen Linux-Befehl in die richtige Syntax für OSX (zsh) zu bekommen:
$ delta=$(( $(date +%s) - $(date -d '2018-04-07 20:00' +%s) ))
(delta möchte ich dann anzeigen lassen)
Ich bekomme aber: zsh: bad math expression: operand expected at end of string
Wenn ich hinten die Formatierung ändere in +%+s bekomme ich:
zsh: bad math expression: operator expected at `24 Feb 202...'

Hat hier jemand Rat?
 
Um das als Zahlen zu rechnen musst du das wohl als epoch ausgeben.
 
ganz genau, nur dachte ich dass +%s genau das macht? ich finde jedenfalls keine andere Option im Handbuch:( Oder denke ich grad Komplet tfalsch?
 
ganz genau! das Problem ist, dass dieses Format nicht genommen wird: date -d 2013-07-05 +%m/%d/%Y
In man-k finde ich aber unter Exempels kein einziges Beispiel, wie ich Epoch zu einem bestimmten festen Datum aufrufe. das dumme ist, dass sich die Syntax unterscheidet:((
 
Denk dran, das ist ein BSD date und kein GNU.
Die meisten Beispiele setzen doch die Argumente in ' '.
Also
date -d '2013-07-05' '+%m/%d/%Y'
 
danke für deine Antwort! werde ich gleich probieren, habe es einstweilen über date -r +%s gelöst, also einfach die Epochenzeit in Sekunden für den 7.4.2018 ausgerechnet und die ziehe ich dann von der aktuellen Anzeige date -r +%s einfach ab und kann dann daraus Tage (die ich Nichtraucher bin) ausrechnen :)
das nächste Problem ist wie ich dieses Skript auf meiner Uhr laufen lasse, damit sie mir auf Zuruf sagt wie lange ich schon nicht mehr rauche -da gibt es die App Kurzbefehle aber die will sich nicht per ssh auf meinem kleinen Server einloggen :(
 
ne haut nicht hin leider aber ich bin mit meiner Lösung zufrieden aber danke! mittlerweile sagt mir die Uhr auch Bescheid, hat geklappt mit der entfernten Shell :) aber schöner wäre es schon gewesen mit date, denn ich wollte eigentlich dass ich sowas wie "19 Monate und 19 Wochen" gesagt bekomme, aber das geht so natürlich nicht, na ja. jedenfalls danke für die Mühe!
 
Zurück
Oben Unten