abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 15:00 | Zajímavý článek

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    13.6. 17:33 | Nová verze

    Byla vydána (𝕏) nová verze 2025.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení na blogu.

    Ladislav Hagara | Komentářů: 0
    13.6. 10:33 | Komunita

    Dánské ministerstvo pro digitální záležitosti má v plánu přejít na Linux a LibreOffice [It's FOSS News].

    Ladislav Hagara | Komentářů: 23
    13.6. 09:22 | Komunita

    V úterý Google vydal Android 16. Zdrojové kódy jsou k dispozici na AOSP (Android Open Source Project). Chybí (zatím?) ale zdrojové kódy specifické pro telefony Pixel od Googlu. Projekty jako CalyxOS a GrapheneOS řeší, jak tyto telefony nadále podporovat. Nejistá je podpora budoucích Pixelů. Souvisí to s hrozícím rozdělením Googlu (Google, Chrome, Android)?

    Ladislav Hagara | Komentářů: 3
    12.6. 20:22 | Nová verze

    Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.101 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.101 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    12.6. 10:00 | Komunita

    V Brně na FIT VUT probíhá třídenní open source komunitní konference DevConf.CZ 2025. Vstup je zdarma, nutná je ale registrace. Na programu je celá řada zajímavých přednášek, lightning talků, meetupů a workshopů. Přednášky lze sledovat i online na YouTube kanálu konference. Aktuální dění lze sledovat na Matrixu, 𝕏 nebo Mastodonu.

    Ladislav Hagara | Komentářů: 0
    12.6. 09:44 | IT novinky

    Vyloučení technologií, které by mohly představovat bezpečnostní riziko pro stát, má umožnit zákon o kybernetické bezpečnosti, který včera Senát schválil spolu s novelami navazujících právních předpisů. Norma, kterou nyní dostane k podpisu prezident, počítá rovněž s prověřováním dodavatelů technologií pro stát. Normy mají nabýt účinnosti od třetího měsíce po jejich vyhlášení ve Sbírce zákonů.

    Ladislav Hagara | Komentářů: 4
    12.6. 01:11 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.6.

    Ladislav Hagara | Komentářů: 0
    12.6. 00:55 | Nová verze

    Po Red Hat Enterprise Linuxu a AlmaLinuxu byl v nové stabilní verzi 10.0 vydán také Rocky Linux. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    11.6. 22:55 | Nová verze

    Bylo vydáno Eclipse IDE 2025-06 aneb Eclipse 4.36. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (56%)
     (31%)
     (7%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 269 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: Perl parser cvs do sql

    27.2.2009 17:48 Ivan
    Perl parser cvs do sql
    Přečteno: 521×

     

    Zdavim, neviete mi niekto pomoc surne zhanam nejaky Perl Parser nasiel som iba PHP parser ktory mi je v mojom pripade zbytocny uz som bezradny... Ide hlavne  aby dokazal velke cvs-ko vyparsovat do sql-ka co je samozrejme...

    priklad subor cvs obsahuje: data.cvs

    ID|MENO|VYSKA|VAHA
    1;janko;180;75
    2;ferko;195;90

    a potrebujem to dostat do tvaru

    insert into zoznam values('1','janko','180','75' );
    insert into zoznam values('2','ferko','195','90' );

    Ale CVS-kovy subor ma asi 8MB.

    Velmi pekne dakujem.

    Odpovědi

    27.2.2009 18:57 tom
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    Nemyslite spis csv - comma separated values? Jinak parser mi prijde jako kanon na vrabce, split a join vam nestaci? perl -lnaF\; -e "print \"insert into zoznam values('\", join(\"','\",@F), \"')\\;\";"
    28.2.2009 05:36 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    "Někdy to opravdu nestčí ;-)"; že...
    28.2.2009 12:19 tom
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    V tom formatu se maji matchovat uvozovky nebo narazite na neco jineho? Ja myslel, ze oddelovaci znak se vzdy voli tak, aby se nevyskytoval v datech.
    28.2.2009 12:57 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    Vždy právě ne, a zrovna u CSV to neplatí.
    28.2.2009 14:19 tom
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    Tak pak staci jen trochu upravit, podle ceho se to rozseka: perl -na -e 's/(?:"(.*?)"|(.*?))[;\n]/$1$2\000/g; print "insert into zoznam values'"('\", join(\"','\", split /\\000/), \"'"');\n";'
    28.2.2009 16:45 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    "Myslíte?"";-)"""
    27.2.2009 19:00 myšák | skóre: 26 | blog: EmentuX | Ostrava
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql

    A můžu se zeptat proč tahat na něco takového PERL parser, když na to stačí např. AWK?

    #!/usr/bin/awk -f
    BEGIN { FS=";" };
    {
    printf("insert into zoznam values('%s','%s','%s','%s');\n", $1, $2, $3, $4);
    }
    
    Je nesmírně těžké být idiotem, konkurence je obrovská...
    28.2.2009 05:35 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    A data

    echo; ahoj; "světe; exit"; "vám to rozparsuje jistě také správně, že ;)"
    28.2.2009 16:03 myšák | skóre: 26 | blog: EmentuX | Ostrava
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    To samozřejmě ne ... nicméně pro výše uvedené zadání to bohatě stačí ;-)
    Je nesmírně těžké být idiotem, konkurence je obrovská...
    28.2.2009 16:47 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    Jasně, promiň, četl jsem jen první odstavec zadání :D I když ty "janko,ferko" by mohly sváděly k domněnce že to může být jen ukázkové zjednodušení.
    27.2.2009 19:47 maxik
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    Zkuste priste trochu hledat! Uplne, ale NAPROSTO stejny problem a taky pomoci perlu se resi tady:

    http://www.linuxsoft.cz/article.php?id_article=1061
    28.2.2009 16:53 Ivan
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql

    Nasiel som len nieco taketo: ale odeluje mi to len slova odelovane ciarkou "," skusal som to nejako upravit ale je to marne nevedeli by ste s tym niekto pohnut? aby my to bralo oddelene data bodko-ciarkou ";"?

    #!/usr/bin/perl

    # PERL MODULE
    use Text::CSV::Simple;
       
    # script

    my $tplSQL = "INSERT INTO country (short_code, name) VALUES (\"%s\",\"%s\");\n";
    my $csvFile="codes.csv";

    my $parser = Text::CSV::Simple->new();
    my @data = $parser->read_file($csvFile);

    foreach(@data) {
            printf $tplSQL, @$_[1], @$_[2];
    };

    Jendа avatar 28.2.2009 18:26 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    Udělat z toho comma separated values? tr ";" ","
    28.2.2009 18:30 Ivan
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql

    Do perlu sa velmi nerozumiem nemohol by si to uviest na priklade?

    Jendа avatar 28.2.2009 18:37 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    To není perl - cat tvuj_soubor | tr ";" "," > soubor.csv. A ten perlový skript pustíš až na ten soubor.csv.
    28.2.2009 19:15 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: Perl parser cvs do sql
    Já bych spíš šel do dokumentace, a udělal my $parser = Text::CSV::Simple->new({ sep_char => ';' });. Myslím, že to bude o něco spolehlivější ;-)
    Ještě na tom nejsem tak špatně, abych četl Viewegha.

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.