Page 1 of 1

Datum mit der Shell

Posted: 2003-06-10 11:54
by alexander newald
Hallo,

hat jemand eine Idee, wie ich folgendes hinbekomme:

Code: Select all

versatz=10
zeit=`date +%s`
und dann die Ausgabe der Zeit zeit + versatz als Datum/Uhrzeit und zwar nicht als Timestamp sondern als echtes Datum!

Alexander Newald

Re: Datum mit der Shell

Posted: 2003-06-10 12:03
by captaincrunch
Idee : ja ... ;)

Rechne beim date mit den Sekunden ab 1.1.1970, rechne daraufhin deinen Versatz auch in Sek. um, und formatiere das ganze nachher mit date.

Re: Datum mit der Shell

Posted: 2003-06-10 14:04
by alexander newald
Aber wie kann ich mit date den Timestamp wieder in ein Datum zurückwanden? date --date=1055246678 geht nicht!

Alexander Newald

Re: Datum mit der Shell

Posted: 2003-06-10 14:43
by thorsten
und mal wieder rächt sich der mächtige, aber bescheiden dokumentierte man date Befehl.
info date ist da wesentlich auskunftsfreudiger

Du kannst das folgendermaßen machen:

VERSATZ=12
date +s -d "$VERSATZ days"

Ã?berprüfe es mit
date -I -d "$VERSATZ days"

Desweiteren kennt date:

date -d tomorrow
date -d yesterday
date -d "10 days ago"
date -d "1 month"
date -d "1 year"
date -d "1 month ago"
date -d "1 year ago"

Es gibt evlt. noch mehr richtig sinnvolle Angaben zu -d aber ich kenne keine weiteren.
Ausprobiert mit date (GNU sh-utils) 2.0.11 von woody.

Umwandeln kannst du das über z.B.:
date -d "1970-01-01 1055249200 sec"

Ich hoffe das war ein Denkanstoß in die richtige Richtung.

Re: Datum mit der Shell

Posted: 2003-06-10 15:57
by alexander newald
Jo, date -d "$versatz sec" ist es.

danke!