Umwandeln von 20050101 nach 2005-01-01

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
ding280
Beiträge: 324
Registriert: 15.04.2005 18:31:18

Umwandeln von 20050101 nach 2005-01-01

Beitrag von ding280 » 22.11.2005 15:25:49

Hallo,

habe folgendes Problem:

Ich habe ein Datum in dem Format 20050101 und möchte das in 2005-01-01 abändern. Wie stelle ich das an?

Gruß Tom

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 22.11.2005 16:07:55

Code: Alles auswählen

root@gms1:~# export V=20050102
root@gms1:~# echo ${V:0:4}-${V:4:2}-${V:6:2}
2005-01-02

Gruß
gms

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 22.11.2005 16:18:07

Oder

Code: Alles auswählen

echo Es ist der 20051122. 12345678 | sed -re '/([0-9]{4})([0-9]{2})([0-9]{2})/\1-\2-\3/g'
Ausgabe:

Code: Alles auswählen

Es ist der 2005-11-22. 1234-56-78
BTW: ist das Format YYYYMMDD oder YYYYDDMM?

ding280
Beiträge: 324
Registriert: 15.04.2005 18:31:18

Beitrag von ding280 » 23.11.2005 19:56:29

Hallo,

die Lösung von gms funktioniert wunderbar. Die von Joghurt mag zwar auch funktionieren, ist aber unübersichtlicher.

Danke nochmal an euch beide.

Gruß Tom

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 23.11.2005 20:09:48

ding280 hat geschrieben:die Lösung von gms funktioniert wunderbar
freut mich
ding280 hat geschrieben:Die von Joghurt mag zwar auch funktionieren, ist aber unübersichtlicher.
Diese Methode hat ihre Vorteile, wenn du Dateien bearbeitest. Aber den Anwendungsfall kannten wir ja nicht :wink:

Gruß
gms

ding280
Beiträge: 324
Registriert: 15.04.2005 18:31:18

Beitrag von ding280 » 23.11.2005 20:27:51

Hallo,

es ging darum, dass ein Script mit einem Parameter aufgerufen wurde, z. B. 20050213. Dann musste in einer db2-Datenbank nachgeschaut werden, ob dieser Tag schon einträge hat, falls das der Fall ist, soll etwas importiert werden, ansonsten nicht. Das Problem bei der Sache war allerdings, dass ein timestamp in der Form 2005-02-13 sein muss.

Gruß Tom

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 23.11.2005 20:37:57

Ja das kenne ich, mit dem Datum/Timestamp ist DB2 etwas (eigentlich ziemlich) unflexibel

Gruß
gms

Antworten