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 01:11 | Bezpečnostní upozornění

    Red Hat řeší bezpečnostní incident, při kterém došlo k neoprávněnému přístupu do GitLab instance používané svým konzultačním týmem.

    Ladislav Hagara | Komentářů: 0
    včera 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ářů: 1
    včera 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
    včera 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
    včera 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
    včera 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
    1.10. 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
    1.10. 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
    1.10. 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
    1.10. 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
    Jaké řešení používáte k vývoji / práci?
     (40%)
     (47%)
     (14%)
     (16%)
     (17%)
     (14%)
     (17%)
     (14%)
     (14%)
    Celkem 161 hlasů
     Komentářů: 11, poslední dnes 07:30
    Rozcestník

    [Bash01] _find_files_with

    11.4.2006 22:06 | Přečteno: 1064× | implementácia

    Do you speek Bash? (alebo "hovoríte bashom?") Ja áno a to už pár rokov. Počnúc týmto dielom sa o zopár svojich užitočných skriptov podelím aj s ostatnými Abíčkármi.

    Nasledujúci skript rekurzívne vyhľadáva súbori, v ktorých sa nachádza hľadaný výraz. Nič výnimočné, ale programátori ocenia, že sa dokáže vyhýbať adresárom 'CVS' (viem, ani to nie je nič moc, ale... vie vypísať aj náhľady súborov).

    Dlhý príbeh:

    Skript je určený a vyhľadávanie "TODO" poznámok v zdrojových kódoch. Bez parametrov vyhľadá všetky súbori, ktoré obsahujú slovo "TODO".

    $ _find_files_with

    Viete, že Leoš Literák (zakladateľ a programátor Abíčka) píše "todo" malími písmenami? Viem to, lebo pracujem na zdrojákoch Abíčka (vo voľnom čase) a pre odlíšenie si TODO značím veľkými písmenami. Nakoľko ma Leošove TODO poznámky nezaujímajú, skript je citlivý na veľkosť hľadaného reťazca.

    Ak chcete vyhľadávať "bezcitne" k veľkosti písmen, zadajte skriptu _druhý_ argument "-i ":

    $ _find_files_with "" "-i"

    Tým ale prepíšete ostatné parametre, ktoré skript predáva programu grep. Takže prídete o zafarbovanie hľadaného reťazca a okolité riadky. Ak tieto fičuri potrebujete používajte niečo takéto:

    $ _find_files_with "" "-i -C 3 --colour=always"

    Posledný _tretí_ argument slúži jedinému účelu - na zapínanie "CVSfóbie". Ak ako tretí argument zadáte "-cvs", skript sa vyhne všetkým súborom, v ktorých ceste sa nachádza adresár CVS. Mne sa to hodí často, CVS neznášam a používam Cogito (výnimočne Darcs):

    $ _find_files_with "" "" "-cvs"

    Krátky príbeh:

    Synopsis

    _find_files_with "term" "grep_opts" "-cvs"

    Options

    term
    Musí byť _prvým_ parameterom. Určuje reťazec, ktorý bude v súboroch hľadaný. Predvolená hodnota: TODO
    grep_opts
    Musí byť _druhým_ parametrom. Dodatočné parametre pre program grep. Predvolená hodnota: -C 3 --colour=always
    -cvs
    Musí byť _tretím_ parametrom. Skript sa bude vyhýbať súborom v adresároch z názvom "CVS".

    Kód:

    #!/bin/bash

    # File: _find_files_with
    # Description: Finds files in which occurs given string

    term="$1"
    grep_opts="$2"
    find_opts="! -type d"

    if [ "$1" == "" ]; then
      term="TODO"
    fi

    if [ "$2" == "" ]; then
      grep_opts="-C 3 --colour=always"
    fi

    if [ "$3" == "-cvs" ]; then
      find_opts="$find_opts -path '*/CVS/*'"
    fi

    for i in `find $find_opts`; do
      if grepped=$(grep "$term" $i $grep_opts); then
        echo " >>>> file '$i' contains:"
        
        cat << EOT
    $grepped
    EOT
        
        echo " <<<<"
        echo
      fi
    done
           

    Hodnocení: 58 %

            špatnédobré        

    Anketa

    Ako píšete TODO?
     (94 %)
     (0 %)
     (6 %)
     (0 %)
    Celkem 34 hlasů

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

    Komentáře

    Vložit další komentář

    11.4.2006 22:11 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    Já píši TODO velkými. Důvod? Mám to zvýrazněné ve vimu a jsem zdechlý to nastavovat ještě pro cokoliv jiného. Takže moje upozornění jsou TODO, FIXME a XXX

    Co přidat anketku? Jak píšete todo
    When your hammer is C++, everything begins to look like a thumb.
    Yin avatar 11.4.2006 22:24 Yin | skóre: 39 | blog: Yinotopia | Slovesnko, Košice
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    rado sa stalo
    Nikdy nie je tak zle, aby to jeden poharik nemohol ešte zhorsiť.
    11.4.2006 22:27 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    XXX? Porno si stahuju leda do /usr/local/bin...
    Math, as Barbie says, is hard.
    11.4.2006 22:39 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    No já si to nevymyslel, prostě jsem si jednoho dne přečetl syntax file vimu pro C a našel jsem tam toto ;-)
    syn keyword     cTodo           contained TODO FIXME XXX
    
    When your hammer is C++, everything begins to look like a thumb.
    12.4.2006 07:21 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    Já vím;). Ale zajímalo by mě, k čemu se to reálně používá (nezkoumal jsem).
    Math, as Barbie says, is hard.
    12.4.2006 07:59 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    3 krat shift-X znacku napisem, 3 krat x znacku zmazem, jednoduchy dovod, nepostacuje ? :-D
    Brabi avatar 11.4.2006 22:28 Brabi | skóre: 8 | blog: Fiend's records | Praha
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    Já píšu ToDo :)
    Pets are always a great help in times of stress. And in times of starvation too, o'course.
    12.4.2006 07:48 tomm | skóre: 7 | blog: tomm's software | Sokolov
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    Taky.
    GUI existuje jen proto, aby se veslo vice terminalu na jednu obrazovku ...
    11.4.2006 22:31 finn | skóre: 43 | blog: finnlandia | 49° 44´/13° 22´
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    Já na podobně věci používám grep, ale proti gustu... :)
    Užívej dne – možná je tvůj poslední.
    11.4.2006 23:39 Honza Král | skóre: 3 | Praha
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    tohle ti nebude fungovat na soubory obsahujici mezery a vubec je to docela nesikovne...

    zkus misto toho

    find yyy | xargs grep xxx

    usetris docela dost casu i vykonu...

    na zpracovani parametru bych doporucil getopts, nebo alespon normalni while ci for, aby si nemusel psat prazdne uvzovky kdyz chces vynechat jeden parametr...

    vubec bych doporucil poohlednout se po netu po nejake ucebnici shellu ci nejakych ukazkovych skriptech...
    12.4.2006 00:05 tired joe | skóre: 17 | blog: rootlet | Trenčín/Bratislava
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    ..."hovoríte bashom?" Ja áno a to už pár rokov.

    ...vubec bych doporucil poohlednout se po netu po nejake ucebnici shellu ci nejakych ukazkovych skriptech...

    To je ale také smutné .)

    Človek sa riadi zdravým rozumom, až keď už nezostáva žiadne iné riešenie.
    12.4.2006 07:13 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    grep -r
    find ... -print0 | xargs -0 ...
    
    Yin avatar 12.4.2006 14:32 Yin | skóre: 39 | blog: Yinotopia | Slovesnko, Košice
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    formulka find|xargs nevypíše súbory vo formáte aký vyžadujem. Vlastne som týmto zápisom chcel trochu pozdvihnúť úroveň blogov... možno zajtra dostanem lepšie hodnotenie :(
    Nikdy nie je tak zle, aby to jeden poharik nemohol ešte zhorsiť.
    12.4.2006 22:24 Honza Král | skóre: 3 | Praha
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    zkusil si man xargs? xargs neni urcen na vypisovani, ale na spousteni prikazu...

    demonstroval bych to na prikladu:

    find . | xargs rm

    ale bacha !!! ;)
    Yin avatar 15.4.2006 00:53 Yin | skóre: 39 | blog: Yinotopia | Slovesnko, Košice
    Rozbalit Rozbalit vše Re: [Bash01] _find_files_with
    Viem, co robi xargs.
    Nikdy nie je tak zle, aby to jeden poharik nemohol ešte zhorsiť.

    Založit nové vláknoNahoru

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