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 12:33 | Zajímavý projekt

Kernel.org představil lore.kernel.org, tj. archiv diskusního listu vývojářů linuxového jádra LKML (Linux Kernel Mailing List) s řadou zajímavých funkcí. Archiv běží na softwaru Public Inbox.

Ladislav Hagara | Komentářů: 1
včera 10:55 | Nová verze

Po devíti měsících vývoje od vydání verze 10.0 byla vydána verze 11.0 open source alternativy GitHubu, tj. softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech, GitLab (Wikipedie). Představení nových vlastností v příspěvku na blogu a na YouTube.

Ladislav Hagara | Komentářů: 1
22.6. 20:44 | Nová verze

Po více než 3 měsících vývoje od vydání verze 238 oznámil Lennart Poettering vydání verze 239 správce systému a služeb systemd (GitHub, NEWS).

Ladislav Hagara | Komentářů: 14
22.6. 15:00 | Nová verze

Bylo oznámeno vydání nové stabilní verze 1.28 a beta verze 1.29 open source textového editoru Atom (Wikipedie). Přehled novinek i s náhledy v příspěvku na blogu. Podrobnosti v poznámkách k vydání. Atom 1.28 je postaven na Electronu 2.0.

Ladislav Hagara | Komentářů: 1
22.6. 14:00 | Nová verze

Byla vydána nová verze 2.3.0 multiplatformního svobodného frameworku pro zpracování obrazu G'MIC (GREYC's Magic for Image Computing, Wikipedie). Přehled novinek i s náhledy na PIXLS.US.

Ladislav Hagara | Komentářů: 0
22.6. 13:00 | Komunita

Akční RPG hra Shadowrun Returns Deluxe, kterou lze hrát i na Linuxu je nyní zdarma na Humble Bundle. Hra vyšla díky kampani na Kickstarteru v roce 2013.

tajny_007 | Komentářů: 0
22.6. 01:00 | Nová verze

Byla vydána verze 1.27 programovacího jazyka Rust (Wikipedie). Z novinek je nutno zmínit podporu SIMD (Single Instruction Multiple Data). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

Ladislav Hagara | Komentářů: 7
21.6. 16:22 | IT novinky

CEO Intelu Brian Krzanich rezignoval (tisková zpráva). Oficiálním důvodem je "vztah na pracovišti". S okamžitou platností se dočasným CEO stal Robert Swan.

Ladislav Hagara | Komentářů: 41
21.6. 14:11 | Komunita

Konsorcium Linux Foundation ve spolupráci s kariérním portálem Dice.com zveřejnilo 2018 Open Source Jobs Report. Poptávka po odbornících na open source neustále roste.

Ladislav Hagara | Komentářů: 1
21.6. 12:44 | Zajímavý článek

Na stránkách linuxové distribuce Ubuntu Studio byla publikována příručka Ubuntu Studio Audio Handbook věnována vytváření, nahrávaní a úpravě zvuků a hudby nejenom v Ubuntu Studiu. Jedná se o živý dokument editovatelný na jejich wiki.

Ladislav Hagara | Komentářů: 0
Jak čtete delší texty z webových stránek?
 (77%)
 (22%)
 (4%)
 (7%)
 (2%)
 (10%)
Celkem 248 hlasů
 Komentářů: 39, poslední 21.6. 17:44
    Rozcestník

    Dotaz: shell while done

    petka avatar 4.2.2009 13:57 petka | skóre: 25 | blog: heydax | Klasterec N/O
    shell while done
    Přečteno: 259×

    mesic den cas ip

    mesic den cas ip

    mesic den cas ip

    mesic den cas ip

    Potrebuju prevest text.log soubor do mysql databaze a z kazdeho radku vytahuju mesic den cas ip , problem je v tom ze nevim jak  prevest postupne vsechny radky do mysql tabulky

    mesic=`cat text.log | awk '{print $1}'`
    den=`cat textlog | awk '{print $2}'`
    cas=`cat text.log | awk '{print $3}'`
    ipadresa=`cat text.log | awk '{print $4}'`



    mysql -N -D databaze  -u user -pheslo -e "INSERT INTO tabulka (  mesic , den , cas , ipadresa ) VALUES ('$mesic','$den','$cas','$ipadresa')" databaze

    jen vim ze by bylo dobre je zpracovat v cyklech ?


     

    Ubuntu server - Asus E35M1​-M ​- AMD Hudson M1 , 2x Technisat Skystar2 , 2x 1GB Lan , WiFi mod AP ,vdr,mysql,apache2...

    Odpovědi

    4.2.2009 14:19 tyctor
    Rozbalit Rozbalit vše Re: shell while done

    nejako takto:

    mysql -N -D databaze  -u user -pheslo < `awk '{printf("INSERT INTO tabulka (mesic, den, cas, ipadresa) VALUES ('"'"%s"'"', '"'"%s"'"', '"'"%s"'"', '"'"%s"'"')\n", $1, $2, $3, $4)}' text.log`
    
    4.2.2009 14:34 marek
    Rozbalit Rozbalit vše Re: shell while done

    dobry den

    Urcite jde napsat:

    awk '// {print "mysql -N -D databaze  -u user -pheslo -e \"INSERT INTO tabulka (  mesic , den , cas , ipadresa ) VALUES (\x27" $1 "\x27,\x27" $2 "\x27,\x27" $3 "\x27,\x27" $4 "\x27)\" databaze"}'  < text.log | sh

    Tohle bude jakztakz fungovat, pokud tam nebude moc radku. Jinak je lepsi pouzit  konstrukci  LOAD DATA INFILE.

     

     

    marek

    4.2.2009 14:43 marek
    Rozbalit Rozbalit vše Re: shell while done

    anebo o neco elegantneji (nemam nikde mysql - nevim, zda se mu nemusi rict, at cte z stdin):

    awk '// {print "INSERT INTO tabulka (  mesic , den , cas , ipadresa ) VALUES (\x27" $1 "\x27,\x27" $2 "\x27,\x27" $3 "\x27,\x27" $4 "\x27);" ' < text.log | mysql -N -D databaze  -u user -pheslo databaze

    marek

    petka avatar 4.2.2009 15:42 petka | skóre: 25 | blog: heydax | Klasterec N/O
    Rozbalit Rozbalit vše Re: shell while done

    funguje perfektne jen jsem z toho trochu rozpacity ze pouzivam neco aniz bych vedel jak to funguje  , stacilo by me jen trosku nakopnout at v tom moc nelitam , jeste jednou dekuju

    Ubuntu server - Asus E35M1​-M ​- AMD Hudson M1 , 2x Technisat Skystar2 , 2x 1GB Lan , WiFi mod AP ,vdr,mysql,apache2...
    4.2.2009 17:17 marek
    Rozbalit Rozbalit vše Re: shell while done

    Dobry den.

    Predpokladam ze rozumite vasemu zapisu

    cat text.log | awk '{print $1}'

    to jde elegantneji prepsat jako

    awk '{print $1}' < text.log

    tim se odstrani zbytecne volani cat.

    Pokud pustite

    awk '// {print "mysql -N -D databaze  -u user -pheslo -e \"INSERT INTO tabulka (  mesic , den , cas , ipadresa ) VALUES (\x27" $1 "\x27,\x27" $2 "\x27,\x27" $3 "\x27,\x27" $4 "\x27)\" databaze"}'  < text.log

    vypise Vam to akorat preparsovany text (uplne stejne jako ten Vas prikaz), ktery  je vlastne  to, co byste psal na klavesnici, kdybyste to tam rucne cpal.

    Takze se to akorat posle rourou na stdin shellu. Neni to ale idealni reseni, protoze se pro kazdy radek znovu vola mysql.

    Daleko lepsi je mysql pustit prave jednou a na stdin mu poslat vsechny radky.

    takze, kdyz pustite

    awk '// {print "INSERT INTO tabulka (  mesic , den , cas , ipadresa ) VALUES (\x27" $1 "\x27,\x27" $2 "\x27,\x27" $3 "\x27,\x27" $4 "\x27);" ' < text.log

    vypise Vam to akorat preparsovany text, ktery  je vlastne  to, co byste psal na klavesnici, po spusteni mysql v interaktivnim modu.

    To \x27 je zapis uvozovek pro awk.

     

    marek

     

     

    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.