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í
×
včera 14:00 | Nová verze

Komunita kolem Linuxu From Scratch (LFS) vydala Linux Linux From Scratch 8.0 a Linux From Scratch 8.0 se systemd. Nové verze knih s návody na instalaci vlastního linuxového systému ze zdrojových kódů přichází především s Glibc 2.25 a GCC 6.3.0. Současně bylo oznámeno vydání verze 8.0 knih Beyond Linux From Scratch (BLFS) a Beyond Linux From Scratch se systemd.

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

Byla vydána verze 0.10.0 webového prohlížeče qutebrowser (Wikipedie). Přehled novinek v příspěvku na blogu. Vývojáři qutebrowseru kladou důraz na ovladatelnost pomocí klávesnice a minimální GUI. Inspirovali se prohlížečem dwb a rozšířeními pro Firefox Vimperator a Pentadactyl. Prohlížeč qutebrowser je naprogramován v Pythonu a využívá PyQt5. Zdrojové kódy jsou k dispozici na GitHubu pod licencí GNU GPL 3.

Ladislav Hagara | Komentářů: 10
25.2. 16:22 | Nová verze

Po pěti měsících od vydání Waylandu a Westonu 1.12.0 oznámil Bryce Harrington (Samsung) vydání Waylandu 1.13.0 a Westonu 2.0.0.

Ladislav Hagara | Komentářů: 0
24.2. 13:37 | Bezpečnostní upozornění

Společnost Cloudflare (Wikipedie) na svém blogu potvrdila bezpečnostní problém s její službou. V požadovaných odpovědích od reverzní proxy byla odesílána také data z neinicializované paměti. Útočník tak mohl získat cookies, autentizační tokeny, data posílaná přes HTTP POST a další citlivé informace. Jednalo se o chybu v parsování HTML. Zneužitelná byla od 22. září 2016 do 18. února 2017. Seznam webů, kterých se bezpečnostní problém potenciálně týká na GitHubu.

Ladislav Hagara | Komentářů: 1
24.2. 08:22 | Nová verze

Byla vydána první beta verze Ubuntu 17.04 s kódovým názvem Zesty Zapus. Ke stažení jsou obrazy Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu GNOME, Ubuntu Kylin, Ubuntu Studio a Xubuntu. Dle plánu by Ubuntu 17.04 mělo vyjít 13. dubna 2017.

Ladislav Hagara | Komentářů: 55
23.2. 17:53 | Bezpečnostní upozornění

Google na svém blogu věnovaném počítačové bezpečnost informuje o nalezení "reálného" způsobu generování kolizí hašovací funkce SHA-1. Podrobnosti a zdrojové kódy budou zveřejněny do 90 dnů. Již dnes lze ale na stránce SHAttered nalézt 2 pdf soubory, jejichž obsah se liší a SHA-1 otisk je stejný (infografika).

Ladislav Hagara | Komentářů: 40
23.2. 17:51 | Nová verze

Vyšla nová verzia open source software na správu a automatizáciu cloudových datacentier Danube Cloud 2.4. Danube Cloud je riešenie postavené na SmartOS, ZFS, KVM a zónach. Obsahuje vlastnosti ako integrovaný monitoring, DNS manažment, zálohy, a samozrejme rozsiahlu dokumentáciu.

dano | Komentářů: 12
23.2. 17:46 | Pozvánky

V Plzni se 3. až 5. března 2017 uskuteční AIMTEChackathon. Je to akce pro vývojáře, grafiky, webdesignéry i veřejnost. Akci provází zajímavé přednášky IT odborníků. Více o programu a možnosti přihlášení na stránkách akce.

cuba | Komentářů: 0
23.2. 01:00 | Nová verze

Známý šifrovaný komunikátor Signal od verze 3.30.0 již nevyžaduje Google Play Services. Autoři tak po letech vyslyšeli volání komunity, která dala vzniknout Google-free forku LibreSignal (dnes již neudržovaný). Oficiální binárky jsou stále distribuované pouze přes Google Play, ale lze použít neoficiální F-Droid repozitář fdroid.eutopia.cz s nezávislými buildy Signalu nebo oficiální binárku stáhnout z Google Play i bez Google účtu

… více »
xm | Komentářů: 8
22.2. 23:14 | Nová verze

Po třech týdnech od vydání první RC verze byla vydána první stabilní verze 17.01.0 linuxové distribuce pro routery a vestavěné systémy LEDE (Linux Embedded Development Environment), forku linuxové distribuce OpenWrt. Přehled novinek v poznámkách k vydání. Dotazy v diskusním fóru.

Ladislav Hagara | Komentářů: 8
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (13%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 721 hlasů
 Komentářů: 66, poslední 22.2. 18:57
    Rozcestník

    Dotaz: Bash: ako vynutit pathname expansion?

    16.11.2008 00:57 Semo | skóre: 44 | blog: Semo
    Bash: ako vynutit pathname expansion?
    Přečteno: 313×
    V bash skripte prechadzam obrovsku a zlozitu adresarovu strukturu a kontrolujem, ci obsahuje vsetko co ma. Kazdy nazov adresara ma nejaky numericky unikatny generovany prefix a dalej textovy nazov. Napr: "002456.c". Potrebujem overit, ze v nejakom adresari sa nachadza aspon jeden adresar *.c. Ako to urobit bez spustenia externeho procesu? Potreboval by som si vynutit pathname expanziu retazca.

    Majme napriklad stav:
    $ ls
    111111.a
    222222.b
    333333.b
    
    a skript:
    dir=*.c
    if [[ -z $dir ]]; then
        echo "c neexistuje"
    fi
    
    No, lenze do premennej dir sa skutocne ulozi retazec "*.c" a vnutri [[ ]] sa uz pathname expanzia nerobi. Test na neprazdnost tejto premennej vzdy zlyha, takze takto napisany skript si nevsimne neexistenciu c-cka. Nepomaha ani zapnute shopt -s nullglob

    Jedine riesenie co som nasiel je expadndovat cez eval:
    dir="`eval echo *.c`"
    lenze spustenie niekolko desiatoktisic procesov zozerie hrozneho casu a tomu by som sa chcel vyhnut. Riesenie by si malo poradit aj s tym, ze nazov adresara moze obsahovat medzeru, prip. ze adresarov *.c moze byt viac ako jeden.

    (Napadlo ma spustit forcyklus (kde bash expanduje nazvy suborov) typu 'for i in *.c; do', vo vnutri si nastavit flag, ze cyklus aspon raz prebehol=adrear c existuje, a skoncit natvrdo cyklus. Ale radsej by som nejake elegantnejsie riesenie.)
    If you hold a Unix shell up to your ear, you can you hear the C.

    Odpovědi

    Luboš Doležel (Doli) avatar 16.11.2008 01:17 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Bash: ako vynutit pathname expansion?
    dir=*.c mi funguje, pokud takový soubor existuje. Nevím k čemu pak -z, existenci lze ověřovat s -e.
    16.11.2008 02:21 Semo | skóre: 44 | blog: Semo
    Rozbalit Rozbalit vše Re: Bash: ako vynutit pathname expansion?
    No, mne dir=*.c funguje, ale iba stylom, ze ak dam echo $dir, tak to vypise expandovane subory. Lenze pomocou echo "$dir" sa da overit, ze ta expanzia nastala az pri volani toho echo a nie v momente priradovania. A kedze v [[ ]] sa pathname expanzia nerobi, tak tam to zlyha.

    No, ale vymyslel som dve riesenia.

    1.)
    set -- *.c
    dir="$1"
    [[ -z "$dir" ]] &&
    ...
    2.)
    dir=( *.c )
    [[ -z "${dir[1]}" ]] &&
    ...
    
    Obe riesenia funguju aj pre viac suborov, aj ak obsahuju medzery. Je ale divne, ze pri priradovani premennych sa pathname exp. nerobi, ale pri priradovani poli uz hej.
    If you hold a Unix shell up to your ear, you can you hear the C.
    16.11.2008 02:31 Semo | skóre: 44 | blog: Semo
    Rozbalit Rozbalit vše Re: Bash: ako vynutit pathname expansion?
    Oprava: 2.)
    ...
    [[ -z "${dir[0]}" ]] &&
    ...
    If you hold a Unix shell up to your ear, you can you hear the C.
    Luboš Doležel (Doli) avatar 16.11.2008 13:02 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Bash: ako vynutit pathname expansion?
    Fakt nechápu, proč se snažíte ověřit existenci souborů přes -z.
    18.11.2008 04:05 luky
    Rozbalit Rozbalit vše Re: Bash: ako vynutit pathname expansion?
    Protoze overuje vysledek te expanze.
    16.11.2008 13:43 mikky | skóre: 25 | blog: Ghlog | M. L. - Praha
    Rozbalit Rozbalit vše Re: Bash: ako vynutit pathname expansion?
    ls *.c > /dev/null 2>&1 && echo "existuje"

    ale pouze v případě, že si si jistý, že se tam neobjeví něco jiného, než adresáře...

    btw, to testování pomocí "-z" je fakt nesmysl

    -m.
    Je vám méně než 30 ? (jsme vrstevnící => budeme si tykat) : (jsem pro vás bažant => můžete mi tykat);
    16.11.2008 16:29 Semo | skóre: 44 | blog: Semo
    Rozbalit Rozbalit vše Re: Bash: ako vynutit pathname expansion?
    1.) ls je samostatny program = spustanie noveho procesu, tomu sa chcem vyhnut

    2.) hladany shellpattern (*.c) tam moze byt 0 az viackrat. To znamena, ze testy pomocou -a/-f/-d atd. nebudu obecne fungovat

    3.) nechcem iba otestovat existenciu, ale aj zistit presny (expandovany) nazov

    4.) Mas lepsie riesnie? Ak ano sem s nim. Ja na svojom nijak netrvam, ale zatial tu lepsie nepadlo. Navyse obecny problem: ako vynutit pathname expansion je stary a (podla mna) doteraz malo riesitelny problem. Staci si tu prehladat diskusie na "bash expansion", "bash expanze" a pod. a vybehne 25 diskusii, bez jasneho zaveru ako to riesit inac ako externym procesom. Sposob expandovat to cez pole by (IMO) vyriesil 1/2 tych diskusii.
    If you hold a Unix shell up to your ear, you can you hear the C.
    16.11.2008 16:42 Semo | skóre: 44 | blog: Semo
    Rozbalit Rozbalit vše Re: Bash: ako vynutit pathname expansion?
    btw, to testování pomocí "-z" je fakt nesmysl

    samozrejme to chce mat zapnute
    shopt -s nullglob
    If you hold a Unix shell up to your ear, you can you hear the C.
    16.11.2008 21:09 kuka
    Rozbalit Rozbalit vše Re: Bash: ako vynutit pathname expansion?
    Moc nechapu proc eval echo, nestaci pro tento ucel jen echo? U mne je jak eval, tak i echo shell builtin a se spoustenim zbytecnych procesu tak neni zadny problem. Samozrejme pokud to ma snad byt prenositelne, tak na to nejde zcela spolehat. Zkousel jsi to pustit? Opravdu se ti spoustely desetitice procesu?
    16.11.2008 21:44 Semo | skóre: 44 | blog: Semo
    Rozbalit Rozbalit vše Re: Bash: ako vynutit pathname expansion?
    eval je builtin. Ale ako chces z neho ziskat tu hodnotu naspat? Pravdepodobne cez ``, prip $(), ktore spustaju novy proces (bash, v ktorom sa to eval vykona ako builtin).
    $ time for ((i=0; i<10000; i++)); do a="`eval echo *.c`"; done; echo "$a"
    
    real    0m7.878s
    user    0m2.253s
    sys     0m5.160s
    222.c
    
    $ time for ((i=0; i<10000; i++)); do a=( *.c ); done; echo "${a[0]}"
    
    real    0m0.495s
    user    0m0.350s
    sys     0m0.103s
    222.c
    
    16x rychlejsie. Podla sys zlozky v 1. pripade vidno, ze vacsinu stravil v rezime jadra, co v tomto priklade moze byt iba vytvaranie a rusenie procesov.
    If you hold a Unix shell up to your ear, you can you hear the C.

    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.