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 13:55 | Nová verze

    Byla vydána nová verze 5.18 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 12.5.6. Tor na verzi 0.4.8.6.

    Ladislav Hagara | Komentářů: 0
    dnes 10:55 | Nová verze

    Šifrovací nástroj VeraCrypt v menším vydání 1.26.7 nejen opravuje chyby a aktualizuje podporované algoritmy (podrobnosti v poznámkách vydání), ale také přestává podporovat původní svazky TrueCrypt.

    Fluttershy, yay! | Komentářů: 0
    dnes 09:00 | Pozvánky

    V sobotu 7. října proběhne Maker Faire Liberec, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    dnes 08:00 | Zajímavý článek Ladislav Hagara | Komentářů: 0
    včera 23:44 | Komunita

    Ubuntu Summit 2023 proběhne od 3. do 5. listopadu v Rize.

    Ladislav Hagara | Komentářů: 0
    včera 19:33 | Nová verze

    Programovací jazyk Python byl vydán v nové major verzi 3.12.0. Podrobný přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    včera 17:00 | Zajímavý projekt

    Linux ve Scratchi. Ne Linux v linuxové distribuci Linux From Scratch, ale Linux bežící v emulátoru procesoru RISC-V ve vizuálním programovacím jazyce Scratch.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Pozvánky

    Dnes ve 12 hodin začal další ročník CTF (Capture the Flag) soutěže The Catch: "Tentokrát nás kolegové z Forenzní laboratoře zavedou na loď plnou sofistikovaných síťových technologiích, kde soutěžící budou muset zvládnout náročné úkoly. Loď nese jméno našeho skvělého kolegy Josefa Vericha – síťového guru. Tradičně se soutěž koná v říjnu – měsíci kybernetické bezpečnosti."

    Ladislav Hagara | Komentářů: 1
    včera 07:00 | Pozvánky

    Konference LinuxDays 2023 proběhne již tento víkend 7. a 8. října v prostorách Fakulty informačních technologií Českého vysokého učení v Praze (FIT ČVUT). Na programu je spousta zajímavých přednášek a workshopů.

    Ladislav Hagara | Komentářů: 1
    1.10. 22:33 | IT novinky

    Netflix v pátek 29. září odeslal poslední film na DVD (YouTube). Společnost dnes známá jako streamovací služba začala před 25 lety jako půjčovna filmů na DVD. Zákazník si DVD objednal na webových stránkách, odesláno mu ale bylo klasickou poštou. Po zhlédnutí jej vložil do obálky a poslal zpět.

    Ladislav Hagara | Komentářů: 16
    Raději
     (54%)
     (46%)
    Celkem 41 hlasů
     Komentářů: 3, poslední včera 23:31
    Rozcestník

    Dotaz: BASH: find

    15.2.2006 18:15 h7
    BASH: find
    Přečteno: 1343×
    Ahoj, snazim se napsat skrip ,ktery prochazi vetsi mnozstvi souboru (cca 4M) ,ty rozparsuje a na zaklade vysledku provede urcite akce.

    Zatim mam reseni ,kdy "hloupe" vylistuji pomoci find soubory do txt a az v druhem kroku nactu soubory z txt a aplikuji na ne prikazy atd...

    Dotaz: jak mam nacpat vice konstukci typu IF ELSE atd.. a prikazu za find -exec ??

    ...nejradeji bych pouzil vlastni bash funkce ,ale nevim jak na to.

    ps: findu se nechci zbavit kvuli jeho parametrizaci a odolnosti ,ale precijenom nemate nekdo napsany odolny find v bashi?

    Diky moc za kazdou radu

    Řešení dotazu:


    Odpovědi

    15.2.2006 19:35 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: BASH: find
    necham sice uplne presne co chces ale mozno je to prave nieco taketo:
    for i in `find .`
    do
      tu aplikujes tie prikazy na subory
    done
    
    15.2.2006 19:36 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: BASH: find
    necham == nechapem
    Řešení 1× (Tomáš Glabasňa)
    15.2.2006 21:39 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: BASH: find
    ten for je pěkně na (cenzurováno)

    lepší (a narozdíl od for i funkční) je použít
    find a jeho parametry | while read prom; do
     echo "tady si delej co chces s $prom"
    done
    
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    Josef Kufner avatar 15.2.2006 21:56 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: BASH: find
    mno, tomu bych taky nevěřil...
    find ... -print0 | xargs -0 neco
    Pokud je potřeba dělat nějaké složitější akce, tak si napiš skript, který tu akci udělá na souborech, které se mu předají jako parametr a timhle to pak spust.
    Hello world ! Segmentation fault (core dumped)
    15.2.2006 21:59 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: BASH: find
    mno, tomu bych taky nevěřil...

    čemu nevěříš? Pokud chce na každý soubor aplikovat nějaká pravidla, tak mi tohle připadá lepší než spouštění zvláštního skriptu.
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    16.2.2006 01:00 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: BASH: find
    nejednalo sa o kvalitu ale o napad..
    15.2.2006 21:43 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: BASH: find
    find www/ -type f -perm 600 -exec 'chmod -c 755 {}' \;

    Projeď adresář www a na všechny soubory co mají právo čtení a zápisu pouze pro vlastníka aplikuj příkaz chmod s následujícími parametry.

    Jinak poradím jen jedno. Hledej šmudlo a koukni se taky na http://cs.wikibooks.org/wiki/Linux

    Josef Kufner avatar 15.2.2006 21:57 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: BASH: find
    To je ukrutně pomalé...
    Hello world ! Segmentation fault (core dumped)
    15.2.2006 22:16 h7
    Rozbalit Rozbalit vše Re: BASH: find
    Diky moc za rady. Vase reseni pracuji takto: find najde vsechny soubory a na ty se potom aplikuje sada prikazu. Ja potrebuji v okamziku,kdy najdu urcity soubor ihned na nej aplikovat ma pravidla. Ano ,muzu si napsat druhy skript a ten potom spoustet pomoci -exec ,ale to neni ono. Nejradeji bych obsah tohoto skriptu vypsal nejak za -exec ,ale jak? h7
    David Watzke avatar 15.2.2006 22:29 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: BASH: find
    Ne, ne... s while read F to provádí hned jakmile je najde..
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    16.2.2006 08:33 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: BASH: find
    No to bych tak s určitostí netvrdil. Spíš bych sázel na to, že se to začne provádět nejpozději, když je toho tolik, co zaplní blok jádra (buffer pipe). To je standardně 4kB. Nicméně, z toho co tu zaznělo bych to řešení považoval za jedno z nejlepších. Zbytečně se neforkuje jako při použití -exec. Nicméně si napsat vlastní script, který ale nebude pracovat s jedním souborem, ale pomocí shift (nebo for i; do ...; done) postupně zpracuje všechny parametry a použít ... -print0 | xargs -0 ... taky není vůbec špatný nápad (nicméně o chlup pomalejší než find | while read; do ... done). Nicméně pokud jde fakt o rychlost, tak bych použil třeba perl a File::Find.

    P.S.: Debilky jako Azurit, kteří jen tak plácnou úplnou kravinu a pak to omlouvají tím, že to byl jen takový návrh radši vůbec nečti. To je vidět na první pohled, že pár miliónů souborů vživotě nespracovával a o fungování for i in `find` ví méně než nic (původně hovno).
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    16.2.2006 08:39 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: BASH: find
    Jo, úplně bych zapoměl, gnu find má od nějaké verze možnost za -exec místo \; napsat + a to se pak chová jako -print0 | xargs -0
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    19.2.2006 17:04 Undefined | skóre: 6
    Rozbalit Rozbalit vše Re: BASH: find
    RE R.S.: To je sice pekny, ale kdyby tu meli odpovidat jenom naprosty odbornici, tak bych se dockal odpovedi na svuj dotaz tak za 5 let... nemuzu soudit jestli to je debilek nebo neni, ale aspon se snazil...tak mu nenadavej...ju ;-)
    20.2.2006 12:14 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: BASH: find
    RE R.S.: To je sice pekny, ale kdyby tu meli odpovidat jenom naprosty odbornici, tak bych se dockal odpovedi na svuj dotaz tak za 5 let...
    Ničím nepodložená spekulace.
    nemuzu soudit jestli to je debilek nebo neni, ale aspon se snazil...
    Ne, nesnažil se. Jen tak plácnul první blobost co ho napadla. Kdyby ti poradil rm -rf /, tak budeš patrně taky šťastnej jak blecha.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    Stanislav Brabec avatar 20.2.2006 16:41 Stanislav Brabec | skóre: 45 | Praha
    Rozbalit Rozbalit vše find v bashi
    Základ pro find v bashi vypadá nějak takto:
    # bash_find cesta action ...
    # bude volat action ... soubor
    shopt -s nullglob
    shopt -s dotglob
    function bash_find {
        local item
        local path="$1"
        shift
        if test -d "$path" ; then
            for item in "$path/"* ; do
                bash_find "$item" "$@"
            done
        else
            "$@" "$path"
        fi
    }
    

    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.