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

    Společnost Jolla spustila kampaň na podporu svého nového telefonu Jolla Phone se Sailfish OS. Dodání je plánováno na první polovinu příštího roku. Pokud bude alespoň 2 000 zájemců. Záloha na telefon je 99 €. Cena telefonu v rámci kampaně je 499 €.

    Ladislav Hagara | Komentářů: 7
    dnes 15:11 | IT novinky

    Netflix kupuje Warner Bros. včetně jejích filmových a televizních studií HBO Max a HBO. Za 72 miliard dolarů (asi 1,5 bilionu korun).

    Ladislav Hagara | Komentářů: 1
    dnes 14:11 | IT novinky

    V Las Vegas dnes končí pětidenní konference AWS re:Invent 2025. Společnost Amazon Web Services (AWS) na ní představila celou řadu novinek. Vypíchnout lze 192jádrový CPU Graviton5 nebo AI chip Trainium3.

    Ladislav Hagara | Komentářů: 0
    dnes 00:33 | Nová verze

    Firma Proxmox vydala novou serverovou distribuci Datacenter Manager ve verzi 1.0 (poznámky k vydání). Podobně jako Virtual Environment, Mail Gateway či Backup Server je založená na Debianu, k němuž přidává integraci ZFS, webové administrační rozhraní a další. Datacenter Manager je určený ke správě instalací právě ostatních distribucí Proxmox.

    |🇵🇸 | Komentářů: 6
    včera 23:44 | Nová verze

    Byla vydána nová verze 2.4.66 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 5 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    včera 14:00 | IT novinky

    Programovací jazyk JavaScript (Wikipedie) dnes slaví 30 let od svého oficiálního představení 4. prosince 1995.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Bezpečnostní upozornění

    Byly zveřejněny informace o kritické zranitelnosti CVE-2025-55182 s CVSS 10.0 v React Server Components. Zranitelnost je opravena v Reactu 19.0.1, 19.1.2 a 19.2.1.

    Ladislav Hagara | Komentářů: 3
    včera 02:44 | Komunita

    Bylo rozhodnuto, že nejnovější Linux 6.18 je jádrem s prodlouženou upstream podporou (LTS). Ta je aktuálně plánována do prosince 2027. LTS jader je aktuálně šest: 5.10, 5.15, 6.1, 6.6, 6.12 a 6.18.

    Ladislav Hagara | Komentářů: 0
    včera 02:22 | Nová verze

    Byla vydána nová stabilní verze 3.23.0, tj. první z nové řady 3.23, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    3.12. 18:11 | Nová verze

    Byla vydána verze 6.0 webového aplikačního frameworku napsaného v Pythonu Django (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (15%)
     (25%)
     (16%)
     (18%)
    Celkem 431 hlasů
     Komentářů: 18, poslední 2.12. 18:34
    Rozcestník

    Převod pdb do txt

    29.5.2009 08:57 | Přečteno: 6317× | Linux | Výběrový blog

    Formát pdb je binárni formát obsahující text. Mám poměrne rozsáhlou sbírku knih v různých formátech z nichž největší část tvoří právě pdb. Na čtení používám FBReader, který mi maximálně vyhovuje.
    Problém nastal v okamžiku, kdy jsem potřeboval mou sbírku fulltextově prohledat. Nikde se mi nepodařilo v FBReader-u najít funkci na fulltextové prohledávání. Jediné co jsem našel je hledání v názvu souborů. Jako jedno z možných řešení mě napadl převod pdb do txt a následná aplikace beagel-u. Pro windows existuje několik programu na převod pdb/txt. Jejich problém spočívá v: nejdou pod wine nainstalovat, jsou to trial verze nebo neumějí hromadný převod se zachováním adresářové struktury.

    Pod linuxem jsem nasel nějaké programy, ale hromadný převod se mi v nich nepodařilo rozchodit. Náhodou jsem poté narazil na utilitu http://homepage.mac.com/pauljlucas/software/txt2pdbdoc (používám Ubuntu a mam tento program v repozitářích takže jsem kompilaci zdrojového kódu nezkoušel).
    Mým cílem byl převod cca 3000 pdb souborů do txt. Situaci komplikovala poměrne složitá adresářová struktura a mezery v názvech souborů. Nakonec jsem se rozhodl napsat jednoduchý skript v bash-i.

    1. Využití konstrukce "find .... -exec" a proc to nefungovalo

    find . -iname '*.pdb' -exec txt2pdbdoc -d -D -v {} \;

    Jednoduchý příkaz, který však nedělal to co má. Na standardní výstup vypisoval "překódované" pdb soubory jako text, ale jaksi nevytvářel vlastni výstupní soubory. Nemohl jsem přijít na to proč nefunguje tak jsem to nechal plavat a cca po měsíci me to napadlo. Program txt2pdbdoc vyžaduje dva argumenty a to vstupní soubor pdb a název výstupního souboru txt. Bohužel find předhazuje jen název vstupního pdb. Jde nejak takovéto situace ošetřit?

    2. Využití cyklu while

    Řešení je jednoduché a využívá find, cyklus while a utilitu txt2pdbdoc a funguje k mé spokojenosti

    find . -iname '*.pdb' | while read F; do txt2pdbdoc -d -D -v "$F" "${F%.pdb}.txt"; done        

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    29.5.2009 09:28 Tomáš
    Rozbalit Rozbalit vše Re: Převod pdb do txt

    První řešení šlo jednoduše dodělat:

    find . -iname '*.pdb' -exec txt2pdbdoc -d -D -v {} {}.txt\;

    29.5.2009 09:45 Uran | skóre: 9 | blog: uranit
    Rozbalit Rozbalit vše Re: Převod pdb do txt

    Funguje akorat mezi druhou {}.txt a \; ma byt mezera. Jinak nevym jak zajistit aby pripona byla txt a ne pdb.txt

    29.5.2009 13:04 Tomáš
    Rozbalit Rozbalit vše Re: Převod pdb do txt

    Jinak nevym jak zajistit aby pripona byla txt a ne pdb.txt

    Na to je příkaz basename, odtrhneš tak pdb. Potom tam přidáš txt.

    30.5.2009 21:49 Zaphod | skóre: 37 | blog: zaphod_blog
    Rozbalit Rozbalit vše Re: Převod pdb do txt
    Odstránenie prípony:
    $ FILE=/tmp/pokus/doc.pdb
    $ NAME=${FILE%.*}
    $ echo $NAME
    /tmp/pokus/doc
    
    basename je dobré, ale rozoznáva veľké a malé písmená a odstráni cestu k súboru.
    $ FILE=/tmp/pokus/doc.pdb
    $ basename $FILE .pdb
    doc
    
    ak bude doc.PDB nič neurobí. Výstupný súbor bude v CP1250 (ak sú české texty), text sa dá prekódovať pomocou iconv.

    Treba dať prevod do scriptu a ten volať z find -exec
    29.5.2009 09:46 petris_ | skóre: 12
    Rozbalit Rozbalit vše PDB neni binarni format pro text
    PDB je databaze pro PalmOS (PalmOS nepouziva souborovy system, ale databazi) a muze v tom byt vpodstate cokoliv - zvuk, obrazek, pismo, levely do hry...
    Jan Drábek avatar 29.5.2009 10:29 Jan Drábek | skóre: 41 | blog: Tartar | Brno
    Rozbalit Rozbalit vše Re: Převod pdb do txt

    Ono taky není pdb jako pdb... Měl jsem pdb, které nešli v mém palmovi vůbec otevřít a celé zařízení po jejich pokusu o otevření zkolabovalo... Musel jsem je převádět na text a zase zpátky.

    01010010 01000101 01010000 01101100 01001001 00110010 01000100 01100101 01010110
    Sleep_Walker avatar 29.5.2009 11:23 Sleep_Walker
    Rozbalit Rozbalit vše Re: Převod pdb do txt
    To bude spis problem aplikace, ktera to otvira. PalmOS je vinnen tim, ze to dovoli a umre :)
    29.5.2009 13:33 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Převod pdb do txt
    Co to propojit přímo s beaglem? Viz External Filters
    When your hammer is C++, everything begins to look like a thumb.
    29.5.2009 18:27 Uran | skóre: 9 | blog: uranit
    Rozbalit Rozbalit vše Re: Převod pdb do txt

    No beagle jsem nezprovoznil. Daemon mi tvrdosive odmita indexovat.

    29.5.2009 18:09 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Převod pdb do txt
    Já dopodus používal PSPad. Pod wine celkem jde.
    Ale hromadně převádět asi neumí, dík za tip...
    thingie avatar 29.5.2009 22:43 thingie | skóre: 8
    Rozbalit Rozbalit vše Re: Převod pdb do txt
    Hm. já tady teda nějaké věci v PDB z různých zdrojů mám, FBReader to ukáže, ale… jako to je na poblití se, akorát, to fakt nejde číst. Možná je to jenom špatně udělané, samozřejmě.
    Růžové lži.
    30.5.2009 22:24 Zaphod | skóre: 37 | blog: zaphod_blog
    Rozbalit Rozbalit vše Re: Převod pdb do txt
    Fbreader má blbé delenie textu do odstavcov. Preto sa ebook nedá čítať. Dá sa to nastaviť pre každý súbor, ale nie pre celý program (aspoň za čias ubuntu 7.04). Na čítanie som preto používal yBoook reader cez wine. Asocioval som si príponu .pdb s týmto programom a bez problému používal.
    30.5.2009 22:40 Zaphod | skóre: 37 | blog: zaphod_blog
    Rozbalit Rozbalit vše Re: Převod pdb do txt
    Druhý dobrý spôsob - script
    $ cat bin/rpdb
    #!/bin/sh
    txt2pdbdoc -d "$1" | iconv -f cp1250 -t utf8 | less
    
    som pridal ako do mc ako prehliadač. Cez F3 som si v mc na konzole prezeral pdb dokumenty.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.