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 16:00 | Komunita

    Společnost Oracle vlastní ochrannou známku JAVASCRIPT. Komunita kolem programovacího jazyka JavaScript zastoupena společností Deno Land vede právní bitvu za její osvobození, viz petice a otevřený dopis na javascript.tm. Do 7. srpna se k nim má vyjádřit Oracle (USPTO TTAB).

    Ladislav Hagara | Komentářů: 0
    dnes 13:11 | IT novinky

    Byl představen samostatný rádiový modul Raspberry Pi Radio Module 2 s Wi-Fi a Bluetooth.

    Ladislav Hagara | Komentářů: 6
    dnes 12:44 | Upozornění

    Certifikační autorita Let’s Encrypt ukončila k 4. červnu zasílání e-mailových oznámení o vypršení platnosti certifikátů. Pokud e-maily potřebujete, Let’s Encrypt doporučuje některou z monitorovacích služeb.

    Ladislav Hagara | Komentářů: 0
    dnes 01:44 | Pozvánky

    Přemýšlíte, jak začít prázdniny? Už v úterý 1. července se bude konat Virtuální Bastlírna, tedy online setkání bastlířů, techniků, vědců i akademiků, kde se ve volné diskuzi probírají novinky ze světa techniky, ale i jiných zajímavých témat.

    Za poslední měsíc jsme byli svědky plamenů několika raket. Zatímco malá raketa od Hondy se úspěšně vznesla a opět přistála, raketa od SpaceX se rozhodla letět všemi směry najednou. Díkybohu méně … více »
    Uprdkávač | Komentářů: 0
    včera 23:44 | Komunita

    Linus Torvalds zmínil, že souborový systém Bcachefs zřejmě odstraní z mainline Linuxu v začleňovacím okně pro vydání 6.17. Kent Overstreet mu totiž posílá kód s novou funkcionalitou i pro začlenění do kandidátů na vydání, kdy očekává pouze opravy chyb. Kent Overstreet byl již dříve z vývoje vyloučen kvůli konfliktní komunikaci.

    Fluttershy, yay! | Komentářů: 10
    27.6. 11:55 | IT novinky

    Ministerstvo průmyslu a obchodu propaguje Microsoft. Ten ve spolupráci s Ministerstvem průmyslu a obchodu spouští AI National Skilling Plan v ČR. "Iniciativa Microsoftu přináší konkrétní a praktickou podporu právě tam, kde ji nejvíc potřebujeme – do škol, firem i veřejné správy.", říká ministr průmyslu a obchodu Lukáš Vlček.

    Ladislav Hagara | Komentářů: 29
    27.6. 10:55 | Zajímavý projekt

    Jste český ISP? Vyplněním krátkého dotazníku můžete pomoci nasměrovat vývoj nové generace routerů Turris Omnia [𝕏].

    Ladislav Hagara | Komentářů: 4
    27.6. 01:33 | IT novinky

    Celkové tržby společnosti Canonical za rok 2024 byly 292 milionů dolarů (pdf). Za rok 2023 to bylo 251 milionů dolarů.

    Ladislav Hagara | Komentářů: 3
    27.6. 01:22 | Nová verze

    Byla vydána verze 1.88.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    27.6. 01:11 | Nová verze

    Distribuce Tails specializující se ochranu online soukromí uživatele byla vydána ve verzi 6.17. Mimo jiné aktualizuje Tor Browser (14.5.4) a opravuje několik chyb.

    Fluttershy, yay! | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (28%)
     (7%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 332 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    pdfgrep

    15.6.2009 18:47 | Výběrový blog | poslední úprava: 16.6.2009 16:43

    Konec procházení přednáškových slidů :). Trochu upravená verze z http://blog.rompe.org/pdfgrep.

    #!/bin/sh
    # 2004-06-22 Ulf Rompe
    
    if [[ $# -lt 2 ]]; then
        echo 'Syntax: pdfgrep [grep options] <pattern> <file> [file ...]'
        exit 1
    fi
    
    while [ ${1:0:1} == "-" ]; do
        GREP_OPTIONS="$GREP_OPTIONS $1"
        shift
    done
    
    pat="$1"
    shift
    
    if [[ $# -gt 1 ]]; then
      GREP_OPTIONS="-H $GREP_OPTIONS"
    fi
    export GREP_OPTIONS
    
    for file in "$@"; do
        pdftotext -layout "$file" - 2>/dev/null | egrep --label="$file" "$pat"
    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ář

    Aleš Janda avatar 15.6.2009 19:22 Aleš Janda | skóre: 23 | blog: kýblův blog | Praha
    Rozbalit Rozbalit vše Re: pdfgrep
    Na přednáškové slidy se mi nejvíce osvědčil starý dobrý Acroread - umí fulltextově prohledávat všechny PDF soubory v zadaném adresáři a podadresářích. Tak jen všechny přednášky + vše co má smysl naházím do jednoho adresáře a prohledávám podle toho. Dokonce to řadí i dle relevance :-)
    mutable avatar 15.6.2009 19:31 mutable | skóre: 7 | blog: mutable_the_mutative
    Rozbalit Rozbalit vše Re: pdfgrep

    Wow. Vyzkouším ASAP.

    Fluttershy, yay! avatar 15.6.2009 19:25 Fluttershy, yay! | skóre: 93 | blog:
    Rozbalit Rozbalit vše Re: pdfgrep
    Eh, co to dělá s obrázky?
    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    mutable avatar 15.6.2009 19:30 mutable | skóre: 7 | blog: mutable_the_mutative
    Rozbalit Rozbalit vše Re: pdfgrep

    Kašle to na ně.

    Fluttershy, yay! avatar 15.6.2009 19:34 Fluttershy, yay! | skóre: 93 | blog:
    Rozbalit Rozbalit vše Re: pdfgrep
    No právě...
    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    stativ avatar 15.6.2009 19:52 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: pdfgrep
    Pán by chtěl i OCR? :-D
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    15.6.2009 20:09 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: pdfgrep
    Ideálně umělou inteligenci. Prostě ji řeknu, ať mi v té kupě pdfek něco najde a až se vrátím z hospody, chcu to mít otevřené a důležité věci podtrhané. To je tak těžké?!!!
    Baník pyčo!
    15.6.2009 20:59 iin
    Rozbalit Rozbalit vše Re: pdfgrep

    Ano.

    15.6.2009 21:18 deda.jabko | skóre: 23 | blog: blog co se jmenuje "každý den jinak" | za new york city dvakrát doleva a pak už se doptáte
    Rozbalit Rozbalit vše Re: pdfgrep
    mozna blby dotaz, ale co dela tento kod: cut -c2 <<<x"$1" ?
    Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
    Fuky avatar 15.6.2009 23:31 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: pdfgrep
    Vrátí Ti to první znak $1 tj. uvedený cyklus pokračuje dokud jsou předávány volby pro grep tj. argumenty na příkazové řádce začínají znakem -.
    Fuky avatar 15.6.2009 23:42 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: pdfgrep
    To samé dělá i ${1:0:1} (Bash umí, Dash nezná). ;-)
    mutable avatar 16.6.2009 02:23 mutable | skóre: 7 | blog: mutable_the_mutative
    Rozbalit Rozbalit vše Re: pdfgrep

    Hledají se přepínače pro grep (tj. znaky co začínají na -). V bash man stránce se <<< jmenuje "here string". Proč se před to dává xko? Zatím nevím, někdo to navrhl v komentáři (viz. zdroj), že prý to řeší problem s mezerami uvnitř názvů souborů, zatím sem nepřišel na to proč. :|

    Fuky avatar 16.6.2009 08:36 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: pdfgrep

    prý to řeší problem s mezerami uvnitř názvů souborů

    To by mě zajímalo kde jsi to vyčetl, v diskuzi to vysvětlili jasně:

    2. A small bug: if you pass a -e or -n as grep options, then the echo in the test of the first while loop thinks that it's an option for itself, for example echo -e outputs just a blank line.

    Tj. pokud $1 bude obsahovat volby, které jsou dostupné i v echo, tak si je vezme za své právě echo. Příklad:

    $ option="-n"
    
    $ echo $option
    
    $ echo x$option
    x-n
    
    

    Fuky avatar 16.6.2009 08:58 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: pdfgrep

    Pro udržení kontextu, bavíme se o:

    while [ `echo x$1 | cut -c2` == "-" ]; do
    

    U následujícího provedení má x jiný význam, pokud by $1 byl prázdný řetězec vypsal by skript chybové hlášení [: ==: unary operator expected, protože na levé straně porovnání by nebylo nic:

    while [[ $(cut -c2 <<<x"$1") == "-" ]]; do
    

    Ale když použijeme uvozovky, tak se můžeme zbavit x i tady (dávat do uvozovek i $1 je zbytečné):

    while [ "$(cut -c2 <<<$1)" == "-" ]; do
    

    Nebo to rovnou můžeme napsat bez zbytečného cut:

    while [ ${1:0:1} == "-" ]; do
    

    mutable avatar 16.6.2009 16:47 mutable | skóre: 7 | blog: mutable_the_mutative
    Rozbalit Rozbalit vše Re: pdfgrep

    Oh. Upraveno. Omlouvám se. Přiznám se, že jsem ty komentáře jenom zhruba prolít.

    Salutis avatar 16.6.2009 21:09 Salutis | skóre: 7 | blog: Salutis
    Rozbalit Rozbalit vše Re: pdfgrep
    Fuky, ty tu nemudruj a makaj na tých nových skriptoch. :)
    Najväčší dar je vedieť posúdiť hodnotu vecí.
    Salutis avatar 16.6.2009 21:08 Salutis | skóre: 7 | blog: Salutis
    Rozbalit Rozbalit vše Re: pdfgrep
    Len tak na okraj, tie podmienky sa dajú zjednodušiť z ...
    if [[ $# -gt 1 ]]; then
      GREP_OPTIONS="-H $GREP_OPTIONS"
    fi
    
    ... na ...
    [ $# -gt 1 ] && REP_OPTIONS="-H $GREP_OPTIONS"
    
    No a ten posledný cyklus čo ide po súboroch neberie názvy s medzerami.

    Asi by bolo lepšie použiť:
    ls ... | while read FILE; do
    
    Najväčší dar je vedieť posúdiť hodnotu vecí.
    Salutis avatar 16.6.2009 21:14 Salutis | skóre: 7 | blog: Salutis
    Rozbalit Rozbalit vše Re: pdfgrep
    Tú druhú pripomienku beriem späť. Zasa zom zabudol, že "$@" (s úvodzovkami) to zvláda v pohode.
    Najväčší dar je vedieť posúdiť hodnotu vecí.

    Založit nové vláknoNahoru

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