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í
×
    dnes 15:44 | Zajímavý článek

    Ondřej Filip publikoval reportáž z ceremonie podpisu kořenové zóny DNS. Zhlédnout lze také jeho nedávnou přednášku Jak se podepisuje kořenová zóna Internetu v rámci cyklu Fyzikální čtvrtky FEL ČVUT.

    Ladislav Hagara | Komentářů: 0
    dnes 14:22 | IT novinky

    Společnost BenQ uvádí na trh novou řadu monitorů RD určenou pro programátory. První z nich je RD240Q.

    Ladislav Hagara | Komentářů: 3
    dnes 13:00 | IT novinky

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem nadále zůstává Frontier od HPE (Cray) s výkonem 1,206 exaFLOPS. Druhá Aurora má oproti loňsku přibližně dvojnásobný počet jader a dvojnásobný výkon: 1,012 exaFLOPS. Novým počítačem v první desítce je na 6. místě Alps. Novým českým počítačem v TOP500 je na 112. místě C24 ve Škoda Auto v Mladé Boleslavi. Ostravská Karolina, GPU

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 10:11 | Nová verze

    GHC (Glasgow Haskell Compiler, Wikipedie), tj. překladač funkcionálního programovacího jazyka Haskell (Wikipedie), byl vydán ve verzi 9.10.1. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 09:22 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 6.8 oznámil Linus Torvalds vydání Linuxu 6.9. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna. Později také na Linux Kernel Newbies.

    Ladislav Hagara | Komentářů: 0
    11.5. 18:22 | Nová verze

    Byla vydána verze 0.2.0 v Rustu napsaného frameworku Pingora pro vytváření rychlých, spolehlivých a programovatelných síťových systémů. Společnost Cloudflare jej letos v únoru uvolnila pod licencí Apache 2.0.

    Ladislav Hagara | Komentářů: 0
    10.5. 19:11 | Nová verze

    Open source RDP (Remote Desktop Protocol) server xrdp (Wikipedie) byl vydán ve verzi 0.10.0. Z novinek je vypíchnuta podpora GFX (Graphic Pipeline Extension). Nová větev řeší také několik bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 15
    10.5. 04:11 | Nová verze

    Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.

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

    Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].

    Ladislav Hagara | Komentářů: 22
    9.5. 21:11 | Zajímavý článek

    V lednu byl otevřen editor kódů Zed od autorů editoru Atom a Tree-sitter. Tenkrát běžel pouze na macOS. Byl napevno svázán s Metalem. Situace se ale postupně mění. V aktuálním příspěvku Kdy Zed na Linuxu? na blogu Zedu vývojáři popisují aktuální stav. Blíží se alfa verze.

    Ladislav Hagara | Komentářů: 61
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (70%)
     (7%)
     (11%)
     (12%)
    Celkem 205 hlasů
     Komentářů: 14, poslední dnes 15:03
    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.