Hallo, Am Thu, 26 Aug 2004, Al Bogner schrieb:
Ich habe in einer Zeile das Datum mit Monatsangabe in Englisch abgekürzt, wodurch sich ein Datum wie 31 Oct 2004" ergibt. Dieses Datum soll mit %s in eine rechenbare Zahl gewandelt werdem um festzustellen, ob das aktuelle Datum bereits das Monat und Jahr erreicht hat. Das Extrahieren von Tag, Datum, Monat mache ich mit grep und cut.
Also wäre eine Variable JETZT=`date +%s`
und bei der anderen, habe ich nicht herausgefunden, wie ich mit "date -d" "Oct" angeben kann. Lt. Manpage beziehen sich die Formatierungsoptionen auf die Ausgabe.
==== LANG="C" DATUM="01 Oct 2004" if test `date -d "$DATUM" '+%s'` -lt `date '+%s'`; then echo "$DATUM 00:00:00 Uhr ist vorbei" fi ==== Evtl. musst du dabei noch beachten, dass -d ohne Zeit als 00:00:00 Uhr interpretiert wird. Ggfs. must du (z.B. per awk statt grep+cut) die Position der einzelen Datumsfelder noch umstellen, z.B. | awk '/MUSTER_VON_GREP/{ print $4" "$3" "$5; }' das kannst dann wohl sogar einfach an eine Variable oder direkt an date verfuettern. Ggfs. waere ein wenig mehr Kontext nuetzlich. -dnh -- 2 is a really odd prime...