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í
×
    dnes 05:00 | Nová verze

    Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 0
    dnes 01:55 | Nová verze

    GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 0
    19.12. 17:22 | IT novinky

    Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.

    Ladislav Hagara | Komentářů: 2
    19.12. 17:00 | Komunita

    Nový CEO Mozilla Corporation Anthony Enzor-DeMeo tento týden prohlásil, že by se Firefox měl vyvinout v moderní AI prohlížeč. Po bouřlivých diskusích na redditu ujistil, že v nastavení Firefoxu bude existovat volba pro zakázání všech AI funkcí.

    Ladislav Hagara | Komentářů: 0
    19.12. 10:11 | IT novinky

    V pořadí šestou knihou autora Martina Malého, která vychází v Edici CZ.NIC, správce české národní domény, je titul Kity, bity, neurony. Kniha s podtitulem Moderní technologie pro hobby elektroniku přináší ucelený pohled na svět současných technologií a jejich praktické využití v domácích elektronických projektech. Tento knižní průvodce je ideální pro každého, kdo se chce podívat na současné trendy v oblasti hobby elektroniky, od

    … více »
    Ladislav Hagara | Komentářů: 1
    19.12. 03:11 | Komunita

    Linux Foundation zveřejnila Výroční zprávu za rok 2025 (pdf). Příjmy Linux Foundation byly 311 miliónů dolarů. Výdaje 285 miliónů dolarů. Na podporu linuxového jádra (Linux Kernel Project) šlo 8,4 miliónu dolarů. Linux Foundation podporuje téměř 1 500 open source projektů.

    Ladislav Hagara | Komentářů: 0
    19.12. 02:11 | Zajímavý článek

    Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.12.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    19.12. 02:00 | Nová verze

    OpenZFS (Wikipedie), tj. implementace souborového systému ZFS pro Linux a FreeBSD, byl vydán ve verzi 2.4.0.

    Ladislav Hagara | Komentářů: 0
    19.12. 01:00 | IT novinky

    Kriminalisté z NCTEKK společně s českými i zahraničními kolegy objasnili mimořádně rozsáhlou trestnou činnost z oblasti kybernetické kriminality. V rámci operací OCTOPUS a CONNECT ukončili činnost čtyř call center na Ukrajině. V prvním případě se jednalo o podvodné investice, v případě druhém o podvodné telefonáty, při kterých se zločinci vydávali za policisty a pod legendou napadeného bankovního účtu okrádali své oběti o vysoké finanční částky.

    Ladislav Hagara | Komentářů: 4
    18.12. 14:44 | IT novinky

    Na lepší pokrytí mobilním signálem a dostupnější mobilní internet se mohou těšit cestující v Pendolinech, railjetech a InterPanterech Českých drah. Konsorcium firem ČD - Telematika a.s. a Kontron Transportation s.r.o. dokončilo instalaci 5G opakovačů mobilního signálu do jednotek Pendolino a InterPanter. Tento krok navazuje na zavedení této technologie v jednotkách Railjet z letošního jara.

    Ladislav Hagara | Komentářů: 6
    Kdo vám letos nadělí dárek?
     (22%)
     (0%)
     (11%)
     (0%)
     (4%)
     (4%)
     (11%)
     (30%)
     (19%)
    Celkem 27 hlasů
     Komentářů: 12, poslední včera 16:06
    Rozcestník

    Dotaz: AWK a csv- třídění do několika souborů

    4.12.2014 11:45 Fibi86 | skóre: 1
    AWK a csv- třídění do několika souborů
    Přečteno: 566×
    Zdravím, snažím se naučiti v AWK a řeším následující problém. Mám jeden csv soubor, který obsahuje mnoho řádků které se neustále plní. Já bych potřeboval řádky podle pole id překopírovat do nového souboru, přes který následně data nahraji do databáze.
    Příklad:
    Online.csv
    --------------- Karel,on,123456,id35,aaa
    Marek,off,12345,id27,bbb
    Karel,off,1232,id35,aaa

    Karel.csv
    ----------------
    on,123456,aaa
    off,1232,aaa

    Marek.csv
    ----------------
    off,12345,bbb
    V souboru Online.csv bych potřeboval zda by awk mohl překopírovaný řádek smazat, aby při dalším spuštění nedošlo k dupicitě. Děkuji všem GURU za radu. Fibi

    Odpovědi

    4.12.2014 12:00 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Jednodušší by bylo nestrkat data místo do souboru Online.csv, ale přímo do AWK. Nebudeš pak muset řešit žádné duplicity.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    4.12.2014 12:29 Fibi86 | skóre: 1
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů

    To by byla mozna nejlepsi cesta.

    V soucasne dobe pouzivam netcat ktery data nasloucha na udp portu:

    nc -l -p 10000 -u >/Onlene.csv
    Jak ho mohu prinutit do AWK?
    Diky
    Josef Kufner avatar 4.12.2014 12:38 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Jak moc chceš mít záznam dat spolehlivý?

    Jinak AWK můžeš napojit na netcat obyčejnou rourou: nc ... | awk ...
    Hello world ! Segmentation fault (core dumped)
    4.12.2014 12:45 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    nc -l -p 10000 -u | awk -F\, '{print $0 > $1}'
    
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    4.12.2014 13:03 Fibi86 | skóre: 1
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Díky, otestuji. Spolehlivost musí být bohužel 100%. Fibi
    4.12.2014 15:27 GeorgeWH | skóre: 42
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    ... ale pouzivas netcat...
    4.12.2014 19:16 Fibi86 | skóre: 1
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Je teda něco lepšího? ;-)
    4.12.2014 20:25 GeorgeWH | skóre: 42
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    napr. napisat si vlastny skript (v ktorom sa daju osetrit rozne vzniknute stavy) a pouzit sofistikovane nastroje, ktore zaistia jeho spustanie/vypinanie (ako bolo spomenute nizsie)...
    4.12.2014 20:40 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Na dekorace má času dost.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    5.12.2014 15:31 marek
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Dobry den.

    100% spolehlivost na UDP je protimluv!

    Pokud to ma byt spolehlive (je mozne alespon detekovat chybu), pak pouzijte TCP.

    Marek
    pavlix avatar 5.12.2014 15:40 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Myslím, že jak u UDP, tak u TCP především záleží na tom, jak se použije.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    5.12.2014 16:03 marek
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů

    V kontextu dotazu je podle me UDP zle, TCP hodne.

    Marek
    pavlix avatar 5.12.2014 16:42 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Jo, to rozhodně a při použití netcatu o to víc.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Josef Kufner avatar 5.12.2014 21:51 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    No, když se podívám na XMPP a jak vesele ztrácí zprávy (a XEP-0198 se dodnes používá jen málo). Ani to TCP to nezachrání.
    Hello world ! Segmentation fault (core dumped)
    pavlix avatar 6.12.2014 00:40 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Myslím, že už jsme se o tom bavili a že za za ztrácení zpráv TCP nemůže.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Josef Kufner avatar 6.12.2014 01:00 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    To netvrdím. To byla jen ukázka, že i "spolehlivý" protokol lze použít špatně.
    Hello world ! Segmentation fault (core dumped)
    Josef Kufner avatar 4.12.2014 12:36 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Mazání není nijak jednoduché. Radši změň způsob práce s těmi daty.

    Předpokládám, že pokud by bylo snadné upravit generující program, aby rovnou zapisoval do databáze, netrápil by jsi se s CSV.

    Mimochodem, AWK neumí správně parsovat CSV, neboť tento formát je na něj příliš složitý a rozbije se to, jakmile se objeví složitější řetězce. CSV není jen o čárce jako oddělovači, ale i o uvozovkách.

    Pokud je soubor plněn způsobem "otevřít-připsat-zavřít", můžeš použít logrotate. Jednou za čas (např. 10 minut) nechat provést rotaci, tím se nová data odloží stranou a vyrobí se prázdný soubor pro budoucí data. Odložená data pak můžeš v klidu zpracovat na jeden průchod, aniž by se ti měnila pod rukama.

    Druhá možnost je nechat Online.csv sledovat pomocí tail -F a jeho výstup předat ke zpracování. Zde však hrozí, že se občas nějaký záznam ztratí, pokud se se souborem budou dít ošklivé věci, nebo bude jakkoliv narušen plynulý běh obou aplikací.
    Hello world ! Segmentation fault (core dumped)
    4.12.2014 13:02 Fibi86 | skóre: 1
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Děkuji za reakci. Přes nc bude na server chodit každých 5s řetězec, který naštěstí neobsahuje žádné příšernosti, max. Tečku, čísla a pár znaků. Následné zpracováni mám v plánu řešit přes mysqlimport, který data nahraje a poté by se soubor vyprázdnil např. z 1/3 aby nedošlo k nějakému úniku a znovuspuštění mysqlimport by duplicitu v databázi přeskočil. Bohužel není možné riskovat že se tam např. Jeden řádek nedostane. AWK zatím s exportem do databáze (přeformátováním cca 30ti sloupců) nemá problém. Zařízení které data posílá na server se bohužel nedá modifikovat. Fibi
    Josef Kufner avatar 4.12.2014 13:27 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    A proč nespustíš mysqlimport už na tom vzdáleném stroji? Nebo rovnou spouštět jen mysql s voláním uložené procedury, která to bude třídit dle potřeby.
    Hello world ! Segmentation fault (core dumped)
    4.12.2014 13:51 Fibi86 | skóre: 1
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Vzdálené zařízení je "blackbox" který pouze posílá daný řetězec na určitou ip.. Myslíš ten mysql spouštět tady na tom lokálním stroji? Díky Fibi
    Josef Kufner avatar 4.12.2014 15:30 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Aha, tak to je pak jiná.

    Namísto netcat bych použil inetd a nechal ho spouštět jednoduchý script, který rovnou předá data do mysql. Data se nebudou ztrácet, pokud script s nc zrovna upadne nebo se na něčem zdrží. Inetd bude držet posluchací socket trvale otevřený a obslouží toho tak daleko více a paralelně než nc, které je v tomhle spíš na jednorázové přenosy.
    Hello world ! Segmentation fault (core dumped)
    4.12.2014 20:16 Fibi86 | skóre: 1
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    A je možné mě "nakopnout" jak xinetd donutit spouštět onen script? Pátrám pátrám a zatím v tom plavu. Děkuji za radu.
    Josef Kufner avatar 4.12.2014 21:38 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    inetd a xinetd fungují tak, že poslouchají na socketu a jakmile přijde spojení, spustí obslužný script a data mu předají na stdin, odpověď pak předávají zpět z stdout. Je to tedy v podstatě velmi podobné klasickému CGI.

    Ty potřebuješ jen nastavit port, protokol a obslužný script. V klasickém inetd bude tvoje konfigurace vypadat asi nějak takto:
    10000 dgram udp nowait nobody /usr/local/bin/tvuj-script
    Pro xinetd to bude podobné, jen syntaxe se liší:
    service tvuj-script
    {
      port = 10000
      socket_type = dgram
      protocol = udp
      wait = no
      user = nobody
      server = /usr/local/bin/tvuj-script
      instances = 10
    }
    (Nezkoušel jsem, zda to funguje, ani to nepoužívám nijak často, takže tam asi bude třeba pár úprav.)
    Hello world ! Segmentation fault (core dumped)
    4.12.2014 23:42 Fibi86 | skóre: 1
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Tak zatim se mi dari sloucit par prikazu a chtel bych preci jen vyuzit AWK a tridit radky dle id pole do ruznych souboru. Ve finale vse otestuji pomoci inetd... Nekdo nejake tipy jak na to trideni? Dekuji
    5.12.2014 07:26 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Však v tom mém příkladu máš i třídění.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    5.12.2014 17:21 Fibi86 | skóre: 1
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    No ja bych spise potreboval syntaxi: pokud v poli c.4 bude id35, zapis radek do souboru Karel.csv... Diky za radu.
    5.12.2014 22:43 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    To už nevypadá tak elegantně, ale budiž:
    awk -F\,  'BEGIN { OFS = ","; }
        $4 ~ /id35/ { print $2, $3, $5 >> "Karel.csv"; next; }
        $4 ~ /id27/ { print $2, $3, $5 >> "Marek.csv"; next; }' < Online.csv
    
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.12.2014 20:26 Fibi86 | skóre: 1
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Super, funguje perfektne. Byla by jeste rada jak ten zkopirovany radek z prvniho souboru smazat? Soubor se stale plni a zbytecne zabira misto. Stacilo by teda radek "presunout". Diky
    8.12.2014 20:42 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    Však to pošli rovnou z trubky.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.12.2014 21:01 Fibi86 | skóre: 1
    Rozbalit Rozbalit vše Re: AWK a csv- třídění do několika souborů
    To se mi právě nedaří :-(

    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.