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

    Immich byl vydán v první stabilní verzi 2.0.0 (YouTube). Jedná se o alternativu k výchozím aplikacím od Googlu a Applu pro správu fotografií a videí umožňující vlastní hosting serveru Immich. K vyzkoušení je demo. Immich je součástí balíčků open source aplikací FUTO. Zdrojové kódy jsou k dispozici na GitHubu pod licencí AGPL-3.0.

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

    Český telekomunikační úřad vydal zprávy o vývoji cen a trhu elektronických komunikací se zaměřením na rok 2024. Jaká jsou hlavní zjištění? V roce 2024 bylo v ČR v rámci služeb přístupu k internetu v pevném místě přeneseno v průměru téměř 366 GB dat na jednu aktivní přípojku měsíčně – celkově jich tak uživateli bylo přeneseno přes 18 EB (Exabyte). Nejvyužívanějším způsobem přístupu k internetu v pevném místě zůstal v roce 2024 bezdrátový

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

    Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-10-01. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Jedná o první verzi postavenou na Debianu 13 Trixie.

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

    Byla vydána nová verze 4.6 svobodného notačního programu MuseScore Studio (Wikipedie). Představení novinek v oznámení v diskusním fóru a také na YouTube.

    Ladislav Hagara | Komentářů: 0
    dnes 02:22 | Komunita

    Společnost DuckDuckGo stojící za stejnojmenným vyhledávačem věnovala 1,1 milionu dolarů (stejně jako loni) na podporu digitálních práv, online soukromí a lepšího internetového ekosystému. Rozdělila je mezi 29 organizací a projektů. Za 15 let rozdala 8 050 000 dolarů.

    Ladislav Hagara | Komentářů: 4
    včera 20:11 | Nová verze

    Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.17. Díky 278 přispěvatelům.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Nová verze

    Bylo vydáno openSUSE Leap 16 (cs). Ve výchozím nastavení přichází s vypnutou 32bitovou (ia32) podporou. Uživatelům však poskytuje možnost ji ručně povolit a užívat si tak hraní her ve Steamu, který stále závisí na 32bitových knihovnách. Změnily se požadavky na hardware. Leap 16 nyní vyžaduje jako minimální úroveň architektury procesoru x86-64-v2, což obecně znamená procesory zakoupené v roce 2008 nebo později. Uživatelé se starším hardwarem mohou migrovat na Slowroll nebo Tumbleweed.

    Ladislav Hagara | Komentářů: 3
    včera 16:00 | IT novinky

    Ministerstvo průmyslu a obchodu (MPO) ve spolupráci s Národní rozvojovou investiční (NRI) připravuje nový investiční nástroj zaměřený na podporu špičkových technologií – DeepTech fond. Jeho cílem je posílit inovační ekosystém české ekonomiky, rozvíjet projekty s vysokou přidanou hodnotou, podpořit vznik nových technologických lídrů a postupně zařadit Českou republiku mezi země s nejvyspělejší technologickou základnou.

    … více »
    Ladislav Hagara | Komentářů: 3
    včera 12:55 | Nová verze

    Radicle byl vydán ve verzi 1.5.0 s kódovým jménem Hibiscus. Jedná se o distribuovanou alternativu k softwarům pro spolupráci jako např. GitLab.

    Ladislav Hagara | Komentářů: 3
    včera 03:22 | IT novinky

    Společnost OpenAI představila text-to-video AI model Sora 2 pro generování realistických videí z textového popisu. Přesnější, realističtější a lépe ovladatelný než předchozí modely. Nabízí také synchronizované dialogy a zvukové efekty.

    Ladislav Hagara | Komentářů: 4
    Jaké řešení používáte k vývoji / práci?
     (41%)
     (47%)
     (15%)
     (16%)
     (18%)
     (14%)
     (17%)
     (14%)
     (14%)
    Celkem 158 hlasů
     Komentářů: 9, poslední 24.9. 17:28
    Rozcestník

    Filtrujme čtivé texty z Projektu Gutenberg 5

    20. 4. 2016 | Karel Kulhavý | Návody | 10212×

    V minulém díle jsme viděli, jak i u jednoduchého unixového příkazu může vzniknout nečekaný problém při použití, zcela mimo doménu jeho působnosti. Existuje elegantní prevence takových omylů?

    Další možnost prevence je před zpracováním dat vytvořit vědeckou hypotézu o nich (žádný řádek nezačíná mezerou), a tu se pak pomocí experimentu snažit potvrdit nebo vyvrátit. Poslední dvě uvedené metody jsou ale komplexní a komplexitu práce s IT ještě zvyšují.

    Tento modelový incident je dle mého názoru pěknou ukázkou jevu, jak komplexní řešení (IT) problému (tužka a papír jsou příliš pomalé, neohrabané při posílání na dálku atd.) zanáší náš život komplexitou. Americký vědec, antropolog Dr. Joseph Tainter, profesor na Department of Environment and Society na Utah State University (vystudoval University of California Berkeley, známou např. OS BSD) tento jev zkoumá. Ve svých videopřednáškách (mirror) na YouTube vysvětluje, jak tato akumulace komplexity nakonec běžně způsobuje pády civilizací, které původně z této komplexity, sloužící k řešení problémů, profitovaly. A že z tohoto hlediska je naše civilizace v úplně typické fázi před kolapsem.

    Po odbočce k civilizačnímu nadhledu tento problém vyřešíme přídavným příkazem sed, který mezery na začátku řádku odfiltruje. Stříška značí začátek řádky. Při práci se sed, grep, awk apod. je třeba dávat pozor, že u každého příkazu je jinak, před které tyhle speciální znaky se dávají obrácená lomítka a před které ne, a také že shell ta obrácená lomítka někdy sní a někdy ne. Pokud je sní, musí se dát dvojitě. V našem případě jsme obrácená lomítka naštěstí nepotřebovali vůbec.

    sed -e 's/^ //g' clean.txt > clean2.txt

    A teď už může přijít zlatý hřeb: jak bývá dle mé zkušenosti typické pro Unix a Linux, s vynaložením neúměrného množství úsilí se nám konečně podařilo udělat jednoduchou věc, na kterou specificky existuje příkaz – odfiltrovat sedmý sloupec ze souboru:

    cut -f 7 -d ' ' clean2.txt
    
    4608764
    4315118
    597079
    274
    220594
    512351
    629627
    346597
    183018
    80
    328835
    60059
    427785
    871780
    3916362
    [...]

    Na zlatý hřeb už jen pověsíme pár dalších příkazů a objeví se nám statistika. -n říká, že čísla se mají řadit číselně a ne abecedně, 10 je tedy po 2 a ne před ní. uniq je z anglického unique, tedy „jedinečný“ – bere seřazený vstup, kde opakující se vstupy jsou v kuse za sebou, a z těch pustí vždy jen jeden. Přepínač -c ale způsobí, že se k tomu ještě navíc spočítá, kolik jich bylo. Dalšímu sortu řekneme, aby obrátil pořadí pomocí -r. Přepínač -k1 znamená klíč v prvním sloupci, tedy řadíme podle počtu opakování. A head -n 20 je tu proto, aby se nám hezky useklo jen prvních 20 řádek článku.

    $ cut -f 7 -d ' ' clean2.txt  |sort -n |uniq -c | sort -nrk1 | head -n 20
         23 11009
         15 12911
         13 21607
         12 12888
         12 12867
          9 1405
          9 12927
          9 12900
          9 12897
          9 12887
          8 21586
          8 12891
          8 12858
          7 12912
          7 12879
          7 12864
          6 59
          6 12906
          6 12905
          6 12890

    Teď by se mohlo zdát, že příkaz konečně proběhl, jak jsme chtěli, a nežádané komplexity IT jsme byli ušetřeni. Ale kde! Zdání klame! I zde si vychutnáme další neočekávaný úder z hlubin Tainterovy studijní oblasti. Ale jak budeme vůbec vědět odkud, když vše funguje, jak má? Úder přichází ze strany internacionalizace. Před určitým počtem let byl sen, že počítače budou moci mluvit světovými jazyky, a tak si dnes můžete nastavit, že vám bash bude psát chybové hlášky třeba vietnamsky nebo čínsky:

    ( for a in $(locale -a|grep -i utf); do LC_ALL="$a" . owhxeddo; done ) 2>&1 | sort | uniq

    Pilní čtenáři si mohou příkaz spustit za domácí úkol, ti ostatní se dozví, jak vypadají chybové hlášky ve všemožných jazycích, v příštím díle.

           

    Hodnocení: 50 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Diskuse byla administrátory uzamčena

    20.4.2016 12:34 Jouda
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 5
    Možná tomu správně nerozumím. Opravdu bylo věnováno tolik úsilí, aby byla nalezena složitá náhrada za toto? awk '{ print $7}' ./inputifile.txt | sort -nr | uniq -c

    Bojím se, o čem budou další díly, když triviálnímu triviálnímu součtu nad jedním sloupcem spolklo tolik řádek "úvah".
    20.4.2016 22:07 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 5

    Kéž by… To úsilí bylo věnováno tomu, aby autor tím krkolomným postupem dosáhl toho, co by měl zadarmo, kdyby tři díly zpátky místo "-ls" napsal "-printf '%s\n'".

    Na druhou stranu, jak s oblibou říká moje tchýně, vychovávat je nejlépe osobním příkladem a nelze-li jinak, pak alespoň odstrašujícím. Takže, děti, tady názorně vidíte, jak to dopadá, když se místo použití vhodných nástrojů budete snažit parsovat výstup určený pro lidského čtenáře. :-)

    21.4.2016 10:42 Jouda
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 5
    Po přečtení tohoto dílu jsem se tak daleko do minulosti jít neodvážil. Nejspíš se ani neodvážím k otevření dalších budoucích dílů. Je to skoro jako scénář pro seriál TV Nova. :)
    21.4.2016 12:11 Jesus Jimenez | skóre: 29
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 5
    Však autor něco podobného zmiňuje sám :)

    A teď už může přijít zlatý hřeb: jak bývá dle mé zkušenosti typické pro Unix a Linux, s vynaložením neúměrného množství úsilí se nám konečně podařilo udělat jednoduchou věc, na kterou specificky existuje příkaz – odfiltrovat sedmý sloupec ze souboru

    Doaenův zákon průtahů: Čím pomaleji pracuješ, tím méně naděláš chyb. -- Murphy
    25.4.2016 14:59 Jouda
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 5
    Ve mě to spíš budí dojem, že neumí používat nástroje k tomu, k čemu jsou. Ono to možná není typické pro UX a LX. Spíš pro autora. :D
    25.4.2016 17:37 kyknos | skóre: 18 | blog: Quid novi? | Ranša Rosa
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 5
    jasne, clock je hrozna lama :D
    So the Nationalists and the Socialists have the same policy on Brexit. They should get together and form a...
    21.4.2016 13:52 kolemjdouci
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 5
    Ja myslim, ze se v dalsich dilech objevi Vesmirni lide. To z toho odstavce o komplexite, ktery konci varovanim pred kolapsem, jasne cisi ...
    21.4.2016 06:41 x
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 5
    Tenhle seriál žeru! Esence unixového stylu humoru. Clock ve své životní formě. Worse is better!
    22.4.2016 11:56 koroptev
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 5
    nastavuje zrcadlo, dekonstruuje stereotypy!
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.