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 11:33 | Nová verze

    Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 10.2 a 9.8. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Vypíchnout lze CLI AI asistenta goose. Podrobnosti v poznámkách k vydání (10.2 a 9.8).

    Ladislav Hagara | Komentářů: 0
    dnes 05:11 | Nová verze

    Organizace Apache Software Foundation (ASF) vydala verzi 30 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
    dnes 05:00 | Nová verze

    Byla vydána nová verze 7.0 svobodného open source redakčního systému WordPress. Kódové jméno Armstrong bylo vybráno na počest amerického jazzového trumpetisty a zpěváka Louise Armstronga (What A Wonderful World).

    Ladislav Hagara | Komentářů: 0
    dnes 04:55 | Bezpečnostní upozornění

    V Drupalu byla nalezena a opravena kritická zranitelnost SA-CORE-2026-004 (CVE-2026-9082). Útočník může provádět libovolné SQL dotazy na webech používajících databázi PostgreSQL.

    Ladislav Hagara | Komentářů: 0
    včera 14:11 | Komunita

    Richard Hughes oznámil, že službu Linux Vendor Firmware Service (LVFS) umožňující aktualizovat firmware zařízení na počítačích s Linuxem, nově sponzoruje také společnost HP.

    Ladislav Hagara | Komentářů: 3
    včera 13:33 | IT novinky

    O víkendu proběhla demopárty Outline 2026. Publikována byla prezentovaná dema. Upozornit lze na 16 bajtové, opravdu šestnáct bajtové, zvukově obrazové demo Wake Up! 16b (YouTube).

    Ladislav Hagara | Komentářů: 2
    včera 04:22 | Nová verze

    Byla vydána nová verze 9.5 multiplatformní digitální pracovní stanice pro práci s audiem (DAW) Ardour. Přehled novinek, vylepšení a oprav v poznámkách k vydání a na YouTube.

    Ladislav Hagara | Komentářů: 0
    19.5. 21:00 | IT novinky

    Dnes a zítra probíhá vývojářská konference Google I/O 2026. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).

    Ladislav Hagara | Komentářů: 0
    19.5. 19:00 | Nová verze

    Canonical vydal Ubuntu Core 26. Vychází z Ubuntu 26.04 LTS a podporováno bude 15 let. Ubuntu Core je minimální neměnný operační systém určený pro vestavěné systémy.

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

    Bylo vydáno OpenBSD 7.9. Po dlouhé době opět se songem: Diamond in the Rough.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (7%)
     (3%)
     (16%)
     (26%)
    Celkem 1674 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Příkaz nenalezen - blok neskončí chybou?

    Nuphar avatar 9.5.2015 16:39 Nuphar | skóre: 19
    Příkaz nenalezen - blok neskončí chybou?
    Přečteno: 178×

    Ahoj,
    mám úsek BASH skriptu, který vypadá zhruba takto:

    {
     prikaz1
     prikaz2
     ...
     prikaz_neni
     ...
     prikazX
     } || echo "Blok XY skončil chybou!"
    

    Pokud se v něm cokoliv nepovede, chci uživateli vypsat chybovou hlášku.

    Ale chová se to tak, že i když nějaký příkaz v bloku neexistuje (bash: command prikaz_neni not found), nevyvolá to skončení celého bloku s chybou a to echo neproběhne. Blok vypadá jako by proběhl v pořádku.

    Jak dosáhnout popsaného chtěného chování?

    Per aspera, Asparagus et Aspergillus ad a/Astra!

    Řešení dotazu:


    Odpovědi

    Fuky avatar 9.5.2015 17:25 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Příkaz nenalezen - blok neskončí chybou?
    #!/bin/bash
    
    (
        set -e
    
        true
        false
        true
    )
    
    if [ $? -ne 0 ]; then
        echo "Blok XY skloncil s chybou."
    fi
    

    BTW: Doporučuji zvážit možnost použít Python.

    Řešení 1× (Nuphar (tazatel))
    Fuky avatar 9.5.2015 17:26 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Příkaz nenalezen - blok neskončí chybou?
    Nuphar avatar 10.5.2015 09:13 Nuphar | skóre: 19
    Rozbalit Rozbalit vše Re: Příkaz nenalezen - blok neskončí chybou?
    Děkuji, zvláště hláška "Bash doesn't have all luxury as you can find in many programming language and also it's true that bash doesn't have less luxury than other programming language." to dost vysvětluje. :-)
    Per aspera, Asparagus et Aspergillus ad a/Astra!
    Řešení 1× (Nuphar (tazatel))
    9.5.2015 17:42 Petr Gajdůšek | skóre: 13 | blog: Úlomky | Znojmo
    Rozbalit Rozbalit vše Re: Příkaz nenalezen - blok neskončí chybou?
    Vrácená hodnota seznamu je exit status posledního provedeného příkazu v něm. Takže musíš zajistit, že po chybě už nebude proveden další příkaz v seznamu, třeba takhle:

    třeba takhle
    {
            true &&
            true &&
            false &&
            echo 'OK'
    } || echo "Blok XY skončil chybou!"
    nebo seznam spustit v podshellu (nebo rovnou v jiném souboru) a využít set -e
    (
            set -e
            true
            true
            false
            echo 'OK'
    )
    
    [ $? -ne 0 ] && echo "Blok XY skončil chybou!"
    Nuphar avatar 10.5.2015 09:14 Nuphar | skóre: 19
    Rozbalit Rozbalit vše Re: Příkaz nenalezen - blok neskončí chybou?
    Moc děkuji, zvláště první řešení je velmi jednoduché, to je přesně ono. :-)
    Per aspera, Asparagus et Aspergillus ad a/Astra!

    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.