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

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

    Ladislav Hagara | Komentářů: 0
    včera 23:11 | IT novinky

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    🇨🇽 | Komentářů: 0
    včera 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    🇨🇽 | Komentářů: 5
    včera 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    🇨🇽 | Komentářů: 0
    včera 15:33 | Zajímavý software

    Yazi je správce souborů běžící v terminálu. Napsán je v programovacím jazyce Rust. Podporuje asynchronní I/O operace. Vydán byl v nové verzi 25.12.29. Instalovat jej lze také ze Snapcraftu.

    Ladislav Hagara | Komentářů: 1
    26.12. 18:44 | Komunita

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    26.12. 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 7
    26.12. 13:11 | Nová verze

    XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).

    🇨🇽 | Komentářů: 0
    26.12. 03:33 | Nová verze

    Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.

    Ladislav Hagara | Komentářů: 0
    25.12. 14:44 | Nová verze

    Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.

    Ladislav Hagara | Komentářů: 0
    Kdo vám letos nadělí dárek?
     (33%)
     (1%)
     (23%)
     (1%)
     (1%)
     (1%)
     (11%)
     (12%)
     (17%)
    Celkem 175 hlasů
     Komentářů: 18, poslední 24.12. 15:29
    Rozcestník

    Dotaz: Vyhledání více souborů pomoci find a regexp

    heartbreaker avatar 7.12.2009 23:02 heartbreaker
    Vyhledání více souborů pomoci find a regexp
    Přečteno: 439×
    Zdravím, potřeboval bych napsat skript, který by mi vypsal všechny soubory kromě hudebních. Nebo aspoň soubory, jejíchž přípony nejsou uvedeny v poli.

    Začal jsem takto:
    #!/bin/bash
    
    # Pole se soubory, které nechci vypsat
    music=("mp3" "m3u")
    dir=$1
    if [ -d "$dir" ]; then
      find "$dir"* ! -iname \*.mp3 -exec ls '{}' \;
    fi
    
    To mi najde vše, kromě *.mp3, ale jak docílit požadované funkčnosti?

    Budu vděčný za mírné nakopnutí (protože se s tím chci poprat víceméně sám), ale nebráním se ani ukázkám.

    Řešení dotazu:


    Odpovědi

    7.12.2009 23:18 Jirka P
    Rozbalit Rozbalit vše Re: Vyhledání více souborů pomoci find a regexp
    Můžeš použít operátory findu:

    find "$dir"* ! \( -iname \*.wav -o -iname \*.mp3 \) -exec ls '{}' \;

    což prostě vygeneruješ z toho pole. Jiná možnost je použít file:

    find "$dir" | xargs file -i | grep -v ': audio/' | ... něco co z toho vyhodí jména ...
    7.12.2009 23:31 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Vyhledání více souborů pomoci find a regexp
    Prípadne sa dá použiť -iregex (spolu s -regextype) a teda niečo ako:
    #!/bin/bash
    
    # Pole se soubory, které nechci vypsat
    music=("mp3" "m3u")
    tmp_IFS=$IFS
    IFS="|"
    re="\.(${music[*]})$"
    IFS=$tmp_IFS
    
    dir=$1
    if [ -d "$dir" ]; then
    	find "$dir" -regextype posix-extended -type f -a ! -iregex "$re"
    fi
    
    Řešení 1× (heartbreaker (tazatel))
    pek avatar 8.12.2009 09:29 pek | skóre: 20
    Rozbalit Rozbalit vše Re: Vyhledání více souborů pomoci find a regexp
    A co třeba:
    #!/bin/bash
    [ -d "$1" ] && find "$1" -type f | grep -Evi "\.(ogg|mp3|flac|m3u|wav)$"
    

    Založit nové vláknoNahoru

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

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