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 11:55 | Humor

    Microsoft poskytl FBI uživatelské šifrovací klíče svého nástroje BitLocker, nutné pro odemčení dat uložených na discích třech počítačů zabavených v rámci federálního vyšetřování. Tento krok je prvním známým případem, kdy Microsoft poskytl klíče BitLockeru orgánům činným v trestním řízení. BitLocker je nástroj pro šifrování celého disku, který je ve Windows defaultně zapnutý. Tato technologie by správně měla bránit komukoli kromě

    … více »
    NUKE GAZA! 🎆 | Komentářů: 27
    včera 01:44 | Komunita

    Spotify prostřednictvím svého FOSS fondu rozdělilo 70 000 eur mezi tři open source projekty: FFmpeg obdržel 30 000 eur, Mock Service Worker (MSW) obdržel 15 000 eur a Xiph.Org Foundation obdržela 25 000 eur.

    Ladislav Hagara | Komentářů: 3
    23.1. 18:11 | Zajímavý software

    Nazdar! je open source počítačová hra běžící také na Linuxu. Zdrojové kódy jsou k dispozici na GitHubu. Autorem je Michal Škoula.

    Ladislav Hagara | Komentářů: 2
    23.1. 16:55 | Nová verze

    Po více než třech letech od vydání verze 1.4.0 byla vydána nová verze 1.5.0 správce balíčků GNU Guix a na něm postavené stejnojmenné distribuci GNU Guix. S init systémem a správcem služeb GNU Shepherd. S experimentální podporou jádra GNU Hurd. Na vývoji se podílelo 744 vývojářů. Přibylo 12 525 nových balíčků. Jejich aktuální počet je 30 011. Aktualizována byla také dokumentace.

    Ladislav Hagara | Komentářů: 9
    23.1. 15:44 | Zajímavý software

    Na adrese gravit.huan.cz se objevila prezentace minimalistického redakčního systému GravIT. CMS je napsaný ve FastAPI a charakterizuje se především rychlým načítáním a jednoduchým ukládáním obsahu do textových souborů se syntaxí Markdown a YAML místo klasické databáze. GravIT cílí na uživatele, kteří preferují CMS s nízkými nároky, snadným verzováním (např. přes Git) a možností jednoduchého rozšiřování pomocí modulů. Redakční

    … více »
    2012 | Komentářů: 0
    23.1. 12:55 | Zajímavý software

    Tým Qwen (Alibaba Cloud) uvolnil jako open-source své modely Qwen3‑TTS pro převádění textu na řeč. Sada obsahuje modely VoiceDesign (tvorba hlasu dle popisu), CustomVoice (stylizace) a Base (klonování hlasu). Modely podporují syntézu deseti různých jazyků (čeština a slovenština chybí). Stránka projektu na GitHubu, natrénované modely jsou dostupné na Hugging Face. Distribuováno pod licencí Apache‑2.0.

    NUKE GAZA! 🎆 | Komentářů: 0
    23.1. 01:11 | Nová verze

    Svobodný citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 8. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    22.1. 16:55 | Nová verze

    Byla vydána verze 1.93.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    22.1. 14:00 | Komunita

    Svobodný operační systém ReactOS (Wikipedie), jehož cílem je kompletní binární kompatibilita s aplikacemi a ovladači pro Windows, slaví 30. narozeniny.

    Ladislav Hagara | Komentářů: 8
    22.1. 11:00 | IT novinky

    Společnost Raspberry Pi má nově v nabídce flash disky Raspberry Pi Flash Drive: 128 GB za 30 dolarů a 256 GB za 55 dolarů.

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (18%)
     (5%)
     (0%)
     (10%)
     (22%)
     (3%)
     (5%)
     (2%)
     (11%)
     (34%)
    Celkem 607 hlasů
     Komentářů: 17, poslední 22.1. 15:24
    Rozcestník

    Dotaz: bash source

    12.11.2020 22:04 pou | skóre: 18
    bash source
    Přečteno: 394×
    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.