abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    dnes 17:44 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek i s náhledy aplikací v Týden v GNOME a Týden v KDE.

    Ladislav Hagara | Komentářů: 1
    včera 21:55 | Nová verze

    Organizace Apache Software Foundation (ASF) vydala verzi 20 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

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

    Desktopové prostředí Cinnamon, vyvíjené primárně pro distribuci Linux Mint, dospělo do verze 6.0. Seznam změn obsahuje především menší opravy a v říjnovém přehledu novinek v Mintu avizovanou experimentální podporu Waylandu.

    Fluttershy, yay! | Komentářů: 3
    včera 13:44 | Nová verze

    OpenZFS (Wikipedie), tj. implementace souborového systému ZFS pro Linux a FreeBSD, byl vydán ve verzích 2.2.2 a 2.1.14. Přináší důležitou opravu chyby vedoucí k možnému poškození dat.

    Ladislav Hagara | Komentářů: 0
    včera 12:00 | Bezpečnostní upozornění

    V ownCloudu byly nalezeny tři kritické zranitelnosti: CVE-2023-49103, CVE-2023-49104 a CVE-2023-49105 s CVSS 10.0, 8.7 a 9.8. Zranitelnost CVE-2023-49103 je právě využívána útočníky. Nextcloudu se zranitelnosti netýkají.

    Ladislav Hagara | Komentářů: 0
    včera 08:00 | IT novinky

    I letos vychází řada ajťáckých adventních kalendářů. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2023. Pro programátory v Perlu je určen Perl Advent Calendar 2023. Zájemci o UX mohou sledovat Lean UXmas 2023. Pro zájemce o kybernetickou bezpečnost je určen Advent of Cyber 2023

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

    Byla vydána verze 2.12 svobodného video editoru Flowblade (GitHub, Wikipedie). Přehled novinek v poznámkách k vydání. Videoukázky funkcí Flowblade na Vimeu. Instalovat lze také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    30.11. 21:11 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 23.11 Topi. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    30.11. 16:22 | Nová verze

    Po 4 měsících vývoje byla vydána nová verze 4.2 multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu a na YouTube.

    Ladislav Hagara | Komentářů: 0
    30.11. 16:11 | Nová verze

    Byla vydána nová stabilní verze 23.11 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Tapir. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.

    Ladislav Hagara | Komentářů: 0
     (35%)
     (17%)
     (48%)
    Celkem 23 hlasů
     Komentářů: 0
    Rozcestník

    Dotaz: Echo příkazu je v pořádku, jeho vykonání ale už ne

    Zdeněk Zámečník avatar 13.8.2008 18:29 Zdeněk Zámečník | skóre: 26
    Echo příkazu je v pořádku, jeho vykonání ale už ne
    Přečteno: 298×
    Už hezkých pár hodin bojuji s tímto skriptem:
    #!/bin/bash
    EXCLUDE_LIST=./usr/share/doc,./usr/share/man/*,./var/cache/apt/archives
    
    EXCLUDE_LIST_DU=\"$(echo $EXCLUDE_LIST | sed 's/,/" --exclude "/g')\"
    du . -hs --exclude $EXCLUDE_LIST_DU
    
    Jednoduše má vypsat velikost aktuálního adresáře s výjimkami v EXCLUDE_LIST. Ale on to neudělá. Vypisuje stále velikost bez ohledu na exclude.

    Pokud poslední řádek upravím takto:
    echo "du . -hs --exclude $EXCLUDE_LIST_DU"
    tak je vidět, že příkaz je poskládán správně:
    du . -hs --exclude "./usr/share/doc" --exclude "./usr/share/man/*" --exclude "./var/cache/apt/archives"
    
    Když ho takto vezmu a spustím, je výsledek správný. Hádal bych, že mi tam někde haprují uvozovky, ale už si s tím takto hraju dost dlouho a stále nic...

    Za každé nakopnutí předem díky

    Řešení dotazu:


    Odpovědi

    David Watzke avatar 13.8.2008 18:59 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Echo příkazu je v pořádku, jeho vykonání ale už ne
    Chyba je v tom, že když echo vypíše i ty uvozovky, tak to znamená, že se tu pak spustí jako kdyby byly escapovaný. Nejjednodušší řešení když už to máš takhle rozdělaný by bylo:
    eval "du . -hs --exclude $EXCLUDE_LIST_DU"
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    Zdeněk Zámečník avatar 13.8.2008 19:10 Zdeněk Zámečník | skóre: 26
    Rozbalit Rozbalit vše Re: Echo příkazu je v pořádku, jeho vykonání ale už ne
    Bezva! Jede to, a jak by to šlo udělat bez escapování? Něco jako toto:
    EXCLUDE_LIST=./usr/share/doc,./usr/share/man/*,./var/cache/apt/archives
    EXCLUDE_LIST_DU=$(echo $EXCLUDE_LIST | sed 's/,/" --exclude "/g')
    du . -hs --exclude "$EXCLUDE_LIST_DU"
    
    mi taky nešlape. Je to jen teoretická otázka ;) Každopádně díky!
    David Watzke avatar 14.8.2008 11:39 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Echo příkazu je v pořádku, jeho vykonání ale už ne
    Osobně bych použil --exclude-from=soubor a nacpal ty cesty do souboru, ale když už bych to dělal takhle, tak by mělo jít něco jako:
    EXCLUDE_LIST=./usr/share/doc,./usr/share/man/*,./var/cache/apt/archives
    EXCLUDE_LIST_DU=$(for d in $EXCLUDE_LIST; do echo -n "--exclude \"$d\" "; done)
    IFS=,
    eval du . -hs --exclude $EXCLUDE_LIST_DU
    Což považuju za lepší řešení, ale tomu problému s escapováním se nevyhneš, pokud v tý proměnný budeš očekávat i cesty s mezerama atp.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    Tarmaq avatar 13.8.2008 19:05 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Echo příkazu je v pořádku, jeho vykonání ale už ne
    nestacilo by toto?
    EXCLUDE_LIST=,./usr/share/doc,./usr/share/man/*,./var/cache/apt/archives
    du . -hs $(echo $EXCLUDE_LIST | sed 's/,/ --exclude /g')
    
    Don't panic!
    Zdeněk Zámečník avatar 13.8.2008 19:12 Zdeněk Zámečník | skóre: 26
    Rozbalit Rozbalit vše Re: Echo příkazu je v pořádku, jeho vykonání ale už ne
    Nestačilo. Nevím, v čem přesně tkví tvá pointa, nejspíš narážíš na uvozovky, ale věř tomu, že tohle fungovat nebude - kvůli regulérnímu výrazu (*)...
    13.8.2008 22:29 petr
    Rozbalit Rozbalit vše Re: Echo příkazu je v pořádku, jeho vykonání ale už ne
    Staci pred hvezdicku dat \\ (dve lomitka)

    PS: * v bashi neni regularni vyraz, tak se rika necemu jinemu (a opravdu za tim l je a) * a ? v shellu se rika zolikove znaky ;-)

    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.