abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:11 | Nová verze

    Byla vydána verze 3.0 (@, 𝕏) svobodného softwaru HAProxy (The Reliable, High Performance TCP/HTTP Load Balancer; Wikipedie) řešícího vysokou dostupnost, vyvažování zátěže a reverzní proxy. Detailní přehled novinek v příspěvku na blogu společnosti HAProxy Technologies.

    Ladislav Hagara | Komentářů: 0
    včera 21:11 | IT novinky

    Společnost Framework Computer představila novou vylepšenou verzi svého modulárního notebooku Framework Laptop 13 s Intel Core Ultra Series 1, displej s lepším rozlišením a novou webovou kameru. Přímo do Česka jej zatím koupit nelze.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Nová verze

    Byla vydána nová verze 2.16 svobodného video editoru Flowblade (GitHub, Wikipedie). Přehled novinek v poznámkách k vydání. Videoukázky funkcí Flowblade na Vimeu. Instalovat lze také z Flathubu.

    Ladislav Hagara | Komentářů: 2
    28.5. 21:22 | Zajímavý software

    TerminalTextEffects (TTE) je engine pro vizuální efekty v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 32
    28.5. 17:11 | Pozvánky

    Od čtvrtka 30. 5. do soboty 1. 6. lze v Praze navštívit Veletrh vědy, tj. největší populárně naučnou akci v České republice, kterou každoročně od roku 2015 pořádá Akademie věd ČR. Vstup zdarma.

    Ladislav Hagara | Komentářů: 10
    28.5. 14:11 | Komunita

    Canonical představil Ubuntu optimalizované pro jednodeskový počítač s RISC-V procesorem Milk-V Mars.

    Ladislav Hagara | Komentářů: 0
    27.5. 21:22 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 24.5.1 Havier. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    27.5. 19:44 | IT novinky

    Společnost xAI založena Elonem Muskem a stojící za AI LLM modelem Grok získala investici 6 miliard dolarů.

    Ladislav Hagara | Komentářů: 1
    27.5. 15:44 | IT novinky

    Finálový zápas mistrovství světa v ledním hokeji přinesl nový rekord NIX.CZ (𝕏): "Dosavadní absolutní maximum našeho propojovacího uzlu bylo překonáno v čase 21:10, kdy jsme při přenosu dat dosáhli 3,14 Tbps. Je třeba také doplnit, že po deváté hodině večerní byly na maximu i ostatní datové přenosy nesouvisející s hokejovým šampionátem".

    Ladislav Hagara | Komentářů: 3
    27.5. 15:11 | Pozvánky

    Přihlaste svou přednášku na další ročník konference LinuxDays, který proběhne 12. a 13. října na FIT ČVUT v pražských Dejvicích. CfP poběží do konce prázdnin, pak proběhne veřejné hlasování a výběr přednášek.

    Petr Krčmář | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (89%)
     (3%)
     (4%)
     (4%)
    Celkem 977 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    Dotaz: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu

    14.5.2011 15:52 jeleniste | skóre: 13 | blog: Prokustovo lože
    Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    Přečteno: 314×
    Mám následující problém, mám nějaký skript v awk, který třídí řádky do několika souborů. Akorát kódování je blbý a já bysem to rád pořídil s minimem ukládání na disk (je to velký).
    skript.sh < iconv -f ISO-8859-2 -t UTF-8 vstupnifajl
    nefunnguje
    iconv -f ISO-8859-2 -t UTF-8 vstupnifajl>skript.sh
    taky ne v tom awku je neco jako
    /patern/{.....;print $0 > "slozka/"file}..
    nesel by ten iconv nejak narvat do toho??? Dik Jelen
    Nejsem blbý, jen se hloupě ptám

    Řešení dotazu:


    Odpovědi

    Jakub Lucký avatar 14.5.2011 15:57 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    a nejde to protáhnout přes stdin/stdout ?

    iconv -f ISO-8859-2 -t UTF-8 vstupni | awk -f awkskript.awk

    If you understand, things are just as they are; if you do not understand, things are just as they are.
    14.5.2011 16:06 jeleniste | skóre: 13 | blog: Prokustovo lože
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    a
    iconv ... | ./skript.sh
    taky nedela co by mel..
    Nejsem blbý, jen se hloupě ptám
    14.5.2011 18:54 jeleniste | skóre: 13 | blog: Prokustovo lože
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    Jejda, tak tenhle dělá, co má dělat, zdá se.. Jsem si to před tim omylem přepsal, proto to nefungovalo. Díky a sory Jelen
    Nejsem blbý, jen se hloupě ptám
    Jakub Lucký avatar 14.5.2011 18:56 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    Tohle pochopitelně fungovat nebude, protože bashovský skript v defaultu nečte ze stdinu...

    Pokud je ten skript čisté AWK, pak to lze udělat tak jak jsem psal (spuštěním AWK interpretu a načtením skriptu do něj), pokud je to opravdu bash skript, pak bude potřeba ho upravit, aby četl stdin. Po řádkách lze celou věc udělat takto:
    #!/bin/bash
    IFS=`echo` #jinak se vám budou místo řádků dělit věci po mezerách...
    while read radek;do 
    #odteď je v proměnné $radek uložen jeden řádek. S tím lze dále operovat
    echo $radek 
    done #zakončení bloku while
    
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    14.5.2011 19:05 Kit
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    Takové konstrukci je lepší se v shellu vyhnout, protože je pomalá. Vždy je dobré se zamyslet, zda by místo cyklu šla použít nějaká funkce.
    Jakub Lucký avatar 14.5.2011 19:20 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    jo, to je pravda... Nějaký konkrétní návrh, jak v Bashi načítat stdin?
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    15.5.2011 12:51 Kit
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    Jesli se nepletu, tak problém je již vyřešen. Přesto odpovím.

    Bash je shell, je tedy určen především k volání jiných programů. V daném případě bylo jen potřeba spojit rourou programy iconv a awk. Cykly zůstaly uvnitř volaných programů, u kterých můžeme předpokládat, že jsou optimalizované. Rozhodně je toto řešení rychlejší, než cyklus v shellu.
    Jakub Lucký avatar 15.5.2011 14:31 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    Problém spočíval v něčem trochu jiném, neuvědomil jsem si, že Bash předá stdin pro skript prvnímu příkazu...
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    15.5.2011 12:12 jeleniste | skóre: 13 | blog: Prokustovo lože
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    iconv .... | bash skript
    funguje ve skriptu je
    gawk 'BEGIN{..} 
    /patern1/{print $0 >> file1}
    /patern2/{print $0 >> file2}
    adlib... '
    Nejsem blbý, jen se hloupě ptám
    15.5.2011 12:59 Kit
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    Stejně dobře by měl fungovat i tento zápis:
    iconv .... | gawk 'BEGIN{..} 
       /patern1/{print $0 >> file1}
       /patern2/{print $0 >> file2}
       adlib... '
    
    Chybu jsi měl jen v tom, že jsi použil '>' (přesměrování do souboru) místo '|' (přesměrování do jiného procesu)
    14.5.2011 17:30 NN
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    Co je v tom awk skriptu ?

    NN
    14.5.2011 18:42 jeleniste | skóre: 13 | blog: Prokustovo lože
    Rozbalit Rozbalit vše Re: Jak použít iconv na vstupu, výstupu, případně uvnitř awkovýho skriptu
    víceméně tohle akorát rozepsaný na asi 700 řádek, ono se s každym tim řádkem eště něco tropí, ale základ je tuto..
    Nejsem blbý, jen se hloupě ptám

    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.