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: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
    19.5. 16:00 | Nová verze

    Byl vydán Mozilla Firefox 151.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 151 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    19.5. 12:22 | IT novinky

    Elon Musk prohrál soudní spor se společností OpenAI, která se podle jeho žaloby odchýlila od původně uváděného cíle vyvíjet umělou inteligenci (AI) ku prospěchu lidstva. Porota včera po necelých dvou hodinách dospěla k jednomyslnému závěru, že Musk žalobu podal příliš pozdě. Musk byl jedním ze spoluzakladatelů společnosti OpenAI, která vznikla v roce 2015 a vyvinula populární chatovací systém ChatGPT. V roce 2018 na svůj post ve vedení

    … více »
    Ladislav Hagara | Komentářů: 0
    19.5. 10:22 | Nová verze

    Byla vydána nová verze 10.4 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Opraveny jsou zranitelnosti Copy Fail a Dirty Frag. Přibyl nový obraz pro Orange Pi 5B.

    Ladislav Hagara | Komentářů: 0
    19.5. 07:44 | Zajímavý software

    Pokud je zranitelnost Linuxu v nepoužívaném jaderném modulu, lze ji jednoduše vyřešit zakázáním automatického načítání tohoto konkrétního zranitelného modulu. Projekt ModuleJail si klade za cíl zvýšit bezpečnost Linuxu zakázáním automatického načítání všech nepoužívaných jaderných modulů. Jedná se o skript, který dá všechny nepoužívané jaderné moduly na blacklist (/etc/modprobe.d/modulejail-blacklist.conf).

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

    Dotaz: bash source

    12.11.2020 22:04 pou | skóre: 18
    bash source
    Přečteno: 398×
    Ahoj,

    píšu skript ve kterém potřebuji načíst funkce z jiného (mě nepatřícího) skriptu. Problém je, že skript končí příkazem exit.

    Takže pokud v mém skriptu zavolam "source funkce.sh" zkončí i můj skript. Pokud ve skriptu "fnkce.sh" smažu řádek "exit" vše funguje.

    Nevíte prosím jak potlačit toto chování? Tedy načíst funkce, ale přitom ignorovat exit?

    Díky

    Řešení dotazu:


    Odpovědi

    Řešení 2× (Bherzet, pou (tazatel))
    12.11.2020 22:20 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: bash source
    source <(grep -v '^exit$' funkce.sh)
    

    Regulární výraz si samozřejmě uprav, pokud je ten exit nějak odsazený a/nebo má parametr.

    Rozumnější řešení by bylo napsat si (podobným způsobem jako výše) rádoby-parser, který by dokázal detekovat začátky a konce funkcí (což je v Bashi malinko oříšek, když tělo funkce může být seznam příkazů nebo subshell, může to být one-liner atd., no nicméně dá se to), aby se načítaly opravdu jen funkce a žádný další kód.

    Tohle řešení je nakonec nejlepší, ale pokud skript nevlastníš / nemůžeš změnit, tak nic.

    13.11.2020 08:41 pou | skóre: 18
    Rozbalit Rozbalit vše Re: bash source
    Díky za radu,

    to řešení nejde, skript upravit můžu,ale při aktualizaci systému by se mi to zase přepsalo.

    Ten reg. funguje.

    Díky
    Řešení 2× (Bherzet, pou (tazatel))
    13.11.2020 03:03 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: bash source
    Co předefinovat fci exit?
    ondrej:ondrej # cat ./e.sh 
    #!/bin/bash
    
    echo A;
    exit;
    
    #eof
    ondrej:ondrej # ./e.sh 
    A
    ondrej:ondrej # function exit(){ return; }
    ondrej:ondrej # . e.sh 
    A
    ondrej:ondrej # source e.sh 
    A
    ondrej:ondrej # unset exit
    ondrej:ondrej # . e.sh 
    -- real exit is here ---
    
    -- OldFrog
    13.11.2020 08:42 pou | skóre: 18
    Rozbalit Rozbalit vše Re: bash source
    Tyjo to mě vůbec nenapadlo :)

    Tohle funguje správně, je to jednoduché a funkční, díky!
    14.11.2020 00:19 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: bash source
    :-)
    -- OldFrog

    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.