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 12:55 | Nová verze

    Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 0
    včera 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 10
    včera 18:33 | IT novinky

    Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.

    Ladislav Hagara | Komentářů: 2
    včera 17:11 | Nová verze

    Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.

    Fluttershy, yay! | Komentářů: 0
    včera 13:11 | IT novinky

    Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.

    Ladislav Hagara | Komentářů: 2
    6.5. 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 5
    6.5. 21:11 | IT novinky

    Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.

    Ladislav Hagara | Komentářů: 1
    6.5. 17:55 | Nová verze

    AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    6.5. 17:11 | IT novinky

    Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (7%)
     (14%)
     (16%)
    Celkem 139 hlasů
     Komentářů: 10, poslední dnes 17:35
    Rozcestník

    Filtrujme čtivé texty z Projektu Gutenberg 1

    23. 3. 2016 | Karel Kulhavý | Návody | 11025×

    Projekt Gutenberg nabízí přes 20 gigabajtů většinou anglické literatury s prošlým copyrightem. Chceme-li si ale pěkně počíst, narážíme na spoustu děl psaných archaickou angličtinou. Jak vyfiltrovat čtivá díla jednoduše pomocí unixových nástrojů?

    Projekt Gutenberg nenabízí žádné pokročilé rozhraní, které by umožnilo jednotlivá díla vyhledávat pomocí komplexních statistických kritérií. K dispozici jsou offline katalogy, top 100 knih. Top 100 vévodí anglický román rodinného života Pýcha a Předsudek od Jane Austenové z roku 1813 a na druhém místě je Alenka v říši divů. Na čtvrtém místě je Kafka se svou povídkou Proměna.

    Online není možné soubory filtrovat či řadit podle kritérií jako např. četnost výskytu archaismů z dané množiny slov, výskyt přímé řeči a pod. Proto si budeme muset data z Projektu Gutenberg stáhnout nejdříve na náš disk, abychom s nimi mohli pracovat.

    Co je projekt Gutenberg? Projekt Gutenberg je nejstarší existující digitální knihovnou. Založen byl již v roce 1971 Michaelem S. Hartem, americkým veteránem korejské války, který zemřel roku 2011 ve věku 64 let. Centrální idea projektu je publikovat texty, které jsou public domain, protože jim prošel copyright. V každém případě zde tedy najdeme díla řeckých filozofických velikánů. Co když ale intelektuálně sofistikované údery z nejzazších hlubin minulosti nejsou zrovna tím, co bychom chtěli číst, a raději bychom preferovali třeba nějaký román s napínavým příběhem?


    Michael S. Hart (vlevo) a Gregory Newby z Projektu Gutenberg v r. 2006.
    Zdroj: "Marcello" z Wikimedia Commons pod licencí GFDL 1.2

    Od roku 1971, kdy počítače ještě vypadaly jako automatické pračky, projekt Gutenberg nasbíral přes 50 tisíc literárních děl, které jsou uspořádány v souborové hierarchii textových souborů, kde se často vyskytují vícenásobné kopie toho samého souboru, které se liší třeba jen korekturami nebo formátováním mezer. Soubory jsou obsahují prostý text v kódování ASCII nebo UTF-8.

    50 tisíc souborů? To je tedy slušné cvičení na souborový systém. Posuďte sami. Pustíme tento příkaz pouze na zjištění, kolik ten adresář včetně podadresářů zabírá místa. Kontrolka disku se rozsvítí jako baterka a z disku je čteno průměrnou rychlostí cca 1,3 MB/s, ač se jedná jen o souborová metadata. Po 6 minutách kontrolka disku konečně zhasne a dostaví se kýžený výsledek 22 gigabajtů. Toto je doslova příkaz, který pustíte a můžete si jít udělat kafe:

    $ time du -sm pg
    21773	pg
    
    real	5m54.408s
    user	0m3.518s
    sys	0m18.034s

    Nejdříve si toto velké sousto tedy budeme muset zkopírovat z Projektu Gutenberg na náš disk. Použijeme k tomu Rsync:

     rsync --progress -z -urv -v --exclude='GUTINDEX*' --exclude='*-8.txt' --include='*.txt' \
     --include='*/' --exclude='*' --delete --min-size=1 --max-size=10000000 \
    ftp@ftp.ibiblio.org::gutenberg pg

    --progress zapíná indikaci probíhajícího stahování. -z zapíná kompresi, -u přenáší pouze soubory, které byly obnoveny (podle časového razítka) od doby, kdy jsme je stáhli. -r je zcela nezbytná rekurze, pokud chceme stáhnout víc než jednotlivý soubor. -v zvyšuje množství informativních hlášek. Že --exclude a --include vyřazují a zařazují určité druhy souborů je asi jasné, co už ale asi jasné být nemusí je, že --exclude a --include mezi sebou interagují nějakým komplexním způsobem, který je popsán v sekci FILTER RULES manuálové stránky rsyncu, která má 2500 řádků a jak bývá u manuálových stránek zvykem, u popisu --exclude na to čtenář není upozorněn. Takže se to dozví pouze tehdy, když si manuálovou stránku přečte celou jako román. Proto má uživatel v zásadě na výběr dvě možnosti: buď zemře sešlostí věkem dřív, než ten rsync vůbec pustí, a nebo se rsync bude chovat jinak, než uživatel bude věřit, že by se měl chovat, a uživatel nebude chápat proč.

    Další přepínače si vysvětlíme v příštím dílu seriálu.

           

    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

    23.3.2016 10:15 Nikola Ciprich | skóre: 23 | blog: NiX_blog | Palkovice
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    mno na seriál se těším, i když rozsah prvního dílu mě kapánek zklamal.. :(
    Did you ever touch the starlight ? Dream for a thousand years? Have you ever seen the beauty Of a newborn century?
    23.3.2016 13:05 Marián Kyral | skóre: 29 | blog: Sem_Tam | Frýdek-Místek
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    Tak v příštím díle si probereme další dvě volby a uvaříme si další kafe :-D
    23.3.2016 19:41 n
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    +1
    24.3.2016 06:28 dutá palice
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    Takže raději delší články včetně omáčky a velké přílohy i když už se tam nebude vejít to hlavní?
    24.3.2016 09:43 Fluttershy, yay! | skóre: 92 | blog:
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    Nebo delší články bez omáčky…?
    🇵🇸Touch grass🇺🇦 ✊ no gods, no masters
    23.3.2016 14:33 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    50 tisíc souborů? To je tedy slušné cvičení na souborový systém. Posuďte sami.

    Hm…

    mike@unicorn:~/work/git/kernel-upstream> time du -sm .
    1862    .
    
    real    0m1.698s
    user    0m0.132s
    sys     0m0.944s
    mike@unicorn:~/work/git/kernel-upstream> find . -type f | wc -l
    54299
    
    23.3.2016 17:13 Georgius
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    Tak nevím, co používá autor blogu, ze srandy jsem to zkusil na disku připojeném z NASky gigovou sítí přes NFS (ten find trvá docela dlouho ...) nad adresářem s 10 podadresáři, z nichž v každém bylo 26728 souborů:
    $ time du -sm .
    88245	.
    
    real	3m0.174s
    user	0m0.636s
    sys	0m8.708s
    
    $ find . -type f | wc -l
    257280
    
    Ale fakt je, že ten find trval věky ...
    
    
    
    
    23.3.2016 18:13 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    autor blogu

    Kéž by… on je to ale článek.

    24.3.2016 06:32 dutá palice
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    Nepoužíváš slavné BTRFS?
    24.3.2016 07:22 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    Ne, tohle bylo na ext4 (a pro pořádek, předtím jsem flushnul cache).
    24.3.2016 01:09 František Koudelka
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    Trochu se mi nezdá, že by stihl Korejskou válku, cituji "Založen byl již v roce 1971 Michaelem S. Hartem, americkým veteránem korejské války, který zemřel roku 2011 ve věku 64 let."
    24.3.2016 10:12 miky
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    Njn, co dodat k autorovi zmineneho clanku, ona veta na strankach Gutenberga zni totiz jinak "and served in the Army in Korea during the Vietnam era" ...
    24.3.2016 10:31 Petr Tomášek | skóre: 39 | blog: Vejšplechty
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    Probůh, vybírat literaturu podle počtu archaismů... *FACEPALM*
    multicult.fm | monokultura je zlo | welcome refugees!
    24.3.2016 15:37 Václav "Darm" Novák | skóre: 26 | blog: Darmovy_kecy | Bechyně / Praha
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    No jestli má problém přeložit i výše zmíněnou větu o minulosti jednoho z autorů, ani se tomu strachu z archaismů nedivím :)
    Cross my heart and hope to fly, stick a cupcake in my eye!
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.