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 23:22 | Nová verze

    Editor kódu Zed (Wikipedie) má nově v sobě integrovaný debugger. Podporuje Rust, C/C++, JavaScript, Go, Python a pomocí rozšíření i další programovací jazyky.

    Ladislav Hagara | Komentářů: 0
    včera 22:22 | Zajímavý článek

    Byl publikován aktuální přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie). Servo mimo jiné nově zvládne animované GIFy.

    Ladislav Hagara | Komentářů: 0
    včera 21:44 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.18 a Xwayland 24.1.8 řeší další bezpečnostní chybu.

    Ladislav Hagara | Komentářů: 0
    včera 17:55 | Pozvánky

    Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 210. sraz, který proběhne 20. června od 18:00 v Red Hat Labu na Fakultě informatiky Masarykovy univerzity na adrese Botanická 68A nebo také online.

    Ladislav Hagara | Komentářů: 0
    včera 14:33 | Nová verze

    Byla vydána nová verze 17 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v changelogu.

    Ladislav Hagara | Komentářů: 0
    včera 12:00 | Nová verze

    Open source 3D herní a simulační engine Open 3D Engine (O3DE) byl vydán v nové verzi 25.05.0. Přehled novinek v poznámkách k vydání. Nově je implementováno standardizované simulační rozhraní ROS (Robot Operating System) 2.

    Ladislav Hagara | Komentářů: 0
    17.6. 22:44 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.17 a Xwayland 24.1.7 řeší 6 bezpečnostních chyb: CVE-2025-49175, CVE-2025-49176, CVE-2025-49177, CVE-2025-49178, CVE-2025-49179 a CVE-2025-49180. Nils Emmerich je nalezl koncem března a dnes publikoval detaily.

    Ladislav Hagara | Komentářů: 0
    17.6. 14:33 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.4 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    17.6. 10:11 | Komunita

    UN Open Source Week 2025 probíhá tento týden v sídle Organizace spojených národů v New Yorku. Středeční a čtvrteční jednání bude možné sledovat na UN Web TV.

    Ladislav Hagara | Komentářů: 1
    17.6. 03:55 | Nová verze

    Byla vydána nová verze 2.50.0 distribuovaného systému správy verzí Git. Přispělo 98 vývojářů, z toho 35 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

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

    Dotaz: awk- jak se zbavit nepotrebneho znaku

    24.10.2005 07:49 mysak
    awk- jak se zbavit nepotrebneho znaku
    Přečteno: 400×
    Ahoj,
    pomoci awk vytahuji ze souboru stringy, oddelene mezerou- to je v pohode, ale nektery string obsahuje na konci carku nebo nektery je cely v uvozovkach. Otazka- nevite jak prinutit awk, aby ten string o tyto znaky zbavil, proste je nevypsal, btw man jsem procetl ale nikde jsem nic nenasel...

    Diky, michal

    Odpovědi

    24.10.2005 09:31 mlz | skóre: 12 | blog: Obcas
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    Cetl, ale spatne :-)) Magicka promenna=FS
    {BEGIN {FS='[;,:~]*[\t ]'} #
    Bude Oddelovat slova pomoci mezery,tabelatoru, a ignorovat strednik, carku, dvojtecku, tildu pred mezerou Mia More, Zelenina: mrkev; Petrzel -- $3 bude Zelenina
    Uvozovky se resi pres split/gsub
    Na rozdil od perlu, FS je REGEX (muze byt)
    26.10.2005 10:36 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    Co to plácáš o tom perlu? Neber perl do huby nadarmo. Co je jakýsi FS? Nic takového v perlu není, tam se to dělá pomocí split a jeho parametr pochopitelně regexp je. Jestli se chceš vytahovat na RS, tak to v perlu opravdu není regexp, ale to není tento případ.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    24.10.2005 09:34 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    Třeba
    awk -F '[",]? "?' ...
    
    nebo je odstraňovat pomocí gsub().
    25.10.2005 08:55 mysak
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    ahoj,
    dik za tip, odstraneni carek OK, ale nevim jak na ty uvozovky. Soubor obsahuje radky, napr.

    pepa "karel", "jindra",

    pomoci gawk -F '[",]? "?' '{print $2,$3}' soubor.txt dostanu
    karel" jindra"

    a pomoci gawk -F '[,:"]*[\t ]' '{print $2,$3}'soubor.txt dostanu
    "karel "jindra

    Stale mi to zbyvaji uvozovky, nevite jak s nimi pryc, bez pouziti gsub()
    mysak
    25.10.2005 21:07 mysak
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    Opravdu nemate nejakej TIP?
    26.10.2005 07:58 mlz | skóre: 12 | blog: Obcas
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    1/ tr -d '"' < soubor.txt |awk ... # umaze uvozovky tr
    2/ gsub(["], ""); ...

    3/ Netusim, ma-li byt $0='Karel "Karel", Milan; Ofsem' $1=="Karel Karel", nebo "Karel"
    26.10.2005 08:52 mysak
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    Potrebuji aby ty jmena byla bez cehokoli- bez uvozovek, bez apostrofu, proste holej text.
    26.10.2005 09:56 mlz | skóre: 12 | blog: Obcas
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    Ten vstupni soubor prozente tr -d '"' - to funguje - a zbavite se uvozovek

    Ten gsub funguje taky - v pripade, ze nemate tr (v Linuxu jsou to u mne/gentoo coreutil)

    V cem je problem ?
    26.10.2005 10:29 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    Hele, co kdyby jsi nám sem hodil vzorek toho textu. Z toho tveho zmateneho popisu jsem nepochopil ani prd.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    26.10.2005 11:08 mysak
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    JO, to je pravda, je to trosku zmateny, ten vzorek:

    Pavel Jindra "Zuzana", "Michal", Tomas
    Rosta Ondrej "Robert", "Radim", Honza Pavel
    Martin Sofie "Daniel", "Dominik", Erik Klement Vladislav Vladimir

    A takhle je to celej dlouhej soubor (radky pod sebou), potrebuji do DB ulozit jen prave ty jmena bez uvozovek. Carek se jde zbavit.
    26.10.2005 12:14 mlz | skóre: 12 | blog: Obcas
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    Nepochopil jsem

    Proc to nejde prohnat pipou (sed, tr, awk -- cokoliv), kde odstranim carky, uvozovky apod a potom teprve to prozenu awk.

    CMD_kde_odstranim[",; \t] <Z_INPUT_SOUBORU | awk ... |

    V pripade, ze NEZALEZI na obsahu $1, ty znaky (+mezera) bych nahradil \n - kazda polozka = samostatny radek

    A asi bych to nedelal v awk, jedna-li se o INSERT INTO... Vetsina jazyku toto zvlada. Ale priznam se, ze je stale malo informaci...
    26.10.2005 13:59 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    jojo, taky mi to nějak pořád není moc jasné. Řešení je přitom tolik od
    tr -d '",' | tr '[:space:]' '\n'
    přes
    sed -e 'y/",//;s/  */\n/'
    až po
    # super hyper parser for Mysak's file
    sub parseMysaksFile (*&) {
      my ($file, $whatToDo) = @_;
      while (<$file>) {
        chomp;
        &$whatToDo($_) foreach (split qr{["',;]*\s+["']*});
      }
    }
    
    # how to use super hyper parser
    {
      local $\=$/;
      parseMysaksFile DATA, sub {print @_};
    }
    
    __END__
    Pavel Jindra "Zuzana", "Michal", Tomas
    Rosta Ondrej "Robert", "Radim", Honza Pavel
    Martin Sofie "Daniel", "Dominik", Erik Klement Vladislav Vladimir
    
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    26.10.2005 15:24 mysak
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    Diky VSEM za rady a tipy, ale ja to chtel jednoduse prohnat pres awk do mysql takhle:

    gawk '{ print "insert into test(prvni,druhy) values(\"" $4 "\",\"" $5 "\");" }' soubor.txt | mysql -u root -D test

    Ale vadi tam ty uvozovky a carky. Takze by bylo lepsi, kdybych ten soubor.txt nejprve prohnal pres to tr -d a pak udelal tento insert pomoci awk?
    27.10.2005 11:00 mlz | skóre: 12 | blog: Obcas
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    V pripade, ze oddelovac muze byt cokoliv po mezere (tedy ne carka) budete vkladat (Michal Tomas|Radim Honza|Dominik Erik) -- predpokladam, ze to je to, co chcete-- bude fungovat tr -d '",' < soubor.txt| awk '{ print "insert into test(prvni,druhy) values(\"" $4 "\",\"" $5 "\");" }' | mysql -u root -D test
    A TAKE
    awk '{ gsub(/[",]/, "");
    print "insert into test(prvni,druhy) values(\"" $4 "\",\"" $5 "\");" }' | mysql -u root -D test
    Stejne si myslim, ze lepsi reseni je pouzit nejaky jazyk a ty data tam pchat pomoci neho - Osetreni transakci
    Namisto tr muze byt cokoliv, co to umi (ja nemam rad sed a nahrazuji ho awk :-))
    Takhle vagne definovana vstupni data je strasidelnost (Data neoddelena mezerou/Pipou, promenlivy pocet poli ve vstupu
    26.10.2005 10:18 diverman | skóre: 32 | blog: život s tučňáčkem
    Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
    Zbavení se uvozovek, data čte ze stdin:
    sed 's/\"//d'
    deb http://ftp.cz.debian.org/debian jessie main contrib non-free

    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.