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 18:11 | IT novinky

    Dnes a zítra probíhá vývojářská konference Google I/O 2025. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | Komunita

    V Bostonu probíhá konference Red Hat Summit 2025. Vybrané přednášky lze sledovat na YouTube. Dění lze sledovat na síti 𝕏 (#RHSummit).

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

    Společnost Red Hat oficiálně oznámila vydání Red Hat Enterprise Linuxu 10. Vedle nových vlastností přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 2
    včera 12:22 | Pozvánky

    Tuto sobotu 24. května se koná historicky první komunitní den projektu Home Assistant. Zváni jsou všichni příznivci, nadšenci a uživatelé tohoto projektu. Pro účast je potřebná registrace. Odkazy na akce v Praze a v Bratislavě.

    jose17 | Komentářů: 0
    včera 04:44 | IT novinky

    Troy Hunt představil Have I Been Pwned 2.0, tj. nový vylepšený web služby, kde si uživatelé mohou zkontrolovat, zda se jejich hesla a osobní údaje neobjevily v únicích dat a případně se nechat na další úniky upozorňovat.

    Ladislav Hagara | Komentářů: 15
    19.5. 23:22 | Zajímavý software

    Microsoft představil open source textový editor Edit bežící v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 7
    19.5. 22:22 | Zajímavý software

    V Seattlu a také online probíhá konference Microsoft Build 2025. Microsoft představuje své novinky. Windows Subsystem for Linux je nově open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 0
    19.5. 13:11 | Zajímavý článek

    Z příspěvku Turris Sentinel – co přinesl rok 2024 na blogu CZ.NIC: "Za poslední rok (únor 2024 – únor 2025) jsme zachytili 8,3 miliardy incidentů a to z 232 zemí a z jejich závislých území. Tyto útoky přišly od 6,2 milionu útočníků (respektive unikátních adres). SMTP minipot je stále nejlákavější pastí, zhruba 79 % útoků bylo směřováno na tento minipot, 16 % útoků směřovalo na minipot Telnet, 3 % útoků směřovaly na minipot HTTP a 2 % na minipot FTP. Dále jsme zaznamenali 3,2 milionu unikátních hesel a 318 tisíc unikátních loginů, které útočníci zkoušeli."

    Ladislav Hagara | Komentářů: 1
    19.5. 12:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová verze 3.0.4 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    19.5. 12:33 | Nová verze

    Byla vydána nová stabilní verze 7.4 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 136. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (24%)
     (8%)
     (2%)
     (0%)
     (0%)
     (6%)
    Celkem 49 hlasů
     Komentářů: 5, poslední včera 20:57
    Rozcestník

    Filtrujme čtivé texty z Projektu Gutenberg 1

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

    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: 93 | blog:
    Rozbalit Rozbalit vše Re: Filtrujme čtivé texty z Projektu Gutenberg 1
    Nebo delší články bez omáčky…?
    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    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.