Portál AbcLinuxu, 10. května 2025 13:22

Dotaz: BASH Konverze data

2.5.2013 09:33 Pavel | skóre: 15 | blog: Pavlův blog | Praha
BASH Konverze data
Přečteno: 356×
Odpovědět | Admin
Ahoj, mohl by mi prosim nekdo poradit, jak zkonvertovat ve skriptu datum?
Na vstupu mam datum ve formatu dd.mm.yyyy a potrebuji z toho udelat yyyy-mm-dd
Nejsem odbornik na awk, zkousel jsem na to jit pomoci awk -F[.-] '{print $3"-"$2"-"$1}' <<< $datum coz funguje dobre, akorat kdyz mam napr. na stupu datum 1.05.213, tak dostanu 2013-05- 1 (potreboval bych pred 1 doplnit nulu).
Diky za radu.

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

2.5.2013 09:57 Kit
Rozbalit Rozbalit vše Re: BASH Konverze data
Odpovědět | | Sbalit | Link | Blokovat | Admin
V AWK můžeš použít printf()

Jako vždy se zeptám: Odkud to datum bereš a kde ho potřebuješ? Možná se AWK dá úplně vypustit drobnou úpravou producenta nebo konzumenta.
2.5.2013 10:09 Pavel | skóre: 15 | blog: Pavlův blog | Praha
Rozbalit Rozbalit vše Re: BASH Konverze data
Udaje nacitam z CSV souboru a nasledne to ukladam do MySQL do pole typu DATE. V DB to potrebuji mit ulozene prave ve formatu yyyy-mm-dd.
Diky
Řešení 1× (Pavel (tazatel))
2.5.2013 10:19 Kit
Rozbalit Rozbalit vše Re: BASH Konverze data
Do DB se přece datum ukládá jako typ DATE. Přece nechceš být trapný jako tvůrci našich centrálních registrů pasů a občanek?

Jinak můžeš v MySQL využít funkci STR_TO_DATE(), která ten převod provede sama.
2.5.2013 10:45 Pavel | skóre: 15 | blog: Pavlův blog | Praha
Rozbalit Rozbalit vše Re: BASH Konverze data
Dik, nevedel jsem o te funkci STR_TO_DATE(), tak to prevedu pomoci ni :)
3.5.2013 16:58 Marek
Rozbalit Rozbalit vše Re: BASH Konverze data
Můžeš sem prosím poslat odkaz na článek, kde se projevuje ta trapnost tvůrců toho registru? Rád bych se pobavil/přiučil.
4.5.2013 10:28 Kit
Rozbalit Rozbalit vše Re: BASH Konverze data
Když někdo neumí od datumu 29.2.2012 odečíst jeden rok, tak nepotřebuji odkaz na článek, abych věděl, že ten, kdo to zvoral, neumí použít databázovou funkci, která to umí. Místo toho to chybně dělá ve skriptu, ve kterém dekrementuje rok a snaží se to převést na datum.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.