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 04:55 | Zajímavý software

    Projekt D7VK dospěl do verze 1.0. Jedná se o fork DXVK implementující překlad volání Direct3D 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.

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

    Byla vydána nová verze 2025.4 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení na blogu.

    Ladislav Hagara | Komentářů: 2
    včera 12:44 | IT novinky

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) zveřejnil Národní politiku koordinovaného zveřejňování zranitelností (pdf), jejímž cílem je nejen zvyšování bezpečnosti produktů informačních a komunikačních technologií (ICT), ale také ochrana objevitelů zranitelností před negativními právními dopady. Součástí je rovněž vytvoření „koordinátora pro účely CVD“, jímž je podle nového zákona o kybernetické … více »

    Ladislav Hagara | Komentářů: 8
    včera 04:33 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.12. Přehled novinek i s náhledy a videi v oficiálním oznámení.

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

    Společnost System76 vydala Pop!_OS 24.04 LTS s desktopovým prostředím COSMIC. Videoukázky na YouTube.

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

    Byla vydána verze 1.92.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
    včera 01:33 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2024. Oceněni byli Andy Wingo, jeden ze správců GNU Guile, Alx Sa za příspěvky do Gimpu a Govdirectory jako společensky prospěšný projekt.

    |🇵🇸 | Komentářů: 3
    11.12. 18:55 | Nová verze

    Bylo vydáno Eclipse IDE 2025-12 aneb Eclipse 4.38. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    11.12. 17:44 | Nová verze

    U příležitosti oslav osmi let prací na debianím balíčku vyšlo GPXSee 15.6. Nová verze přináší především podporu pro geotagované MP4 soubory, včetně GoPro videí. Kdo nechce čekat, až nová verze dorazí do jeho distribuce, nalezne zdrojové kódy na GitHubu.

    Martin Tůma | Komentářů: 15
    11.12. 09:22 | Nová verze

    Monado, tj. multiplatformní open source implementace standardu OpenXR specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro virtuální realitu (VR) a rozšířenou realitu (AR), bylo vydáno ve verzi 25.1.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (48%)
     (19%)
     (17%)
     (23%)
     (15%)
     (24%)
     (15%)
     (17%)
    Celkem 460 hlasů
     Komentářů: 19, poslední 11.12. 20:04
    Rozcestník

    Dotaz: bash: konstrukce proměnné obsahující v názvu parametr scriptu/funkce

    1.2.2005 14:22 © | skóre: 37 | blog: escaped
    bash: konstrukce proměnné obsahující v názvu parametr scriptu/funkce
    Přečteno: 444×
    Dobrý den.

    Vím, že je to asi pěknej TeXismus, ale potřeboval bych vytvořit proměnnou, jejíž název by sestával z řekněme "statické" části a parametru, který je předán funkci či scriptu.
    #!/bin/bash
    
    funtion foo () {
    local BAR_$1=$2    # nefunguje, mela by vzniknout promenna
    echo "$BAR_$1"     # BAR_"obsah $1"=$2
    }
    
    foo Ahoj svete     # melo by vypsat "svete"
                       # uvnitr funkce by mela vzniknout promenna
                       # BAR_Ahoj="svete"
    exit 0
    
    Jak na to? Děkuji.

    Odpovědi

    1.2.2005 14:45 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: bash: konstrukce proměnné obsahující v názvu parametr scriptu/funk
    Můžeš použít eval, který definitivně smíchá syntaxi a data, a/nebo symbolické reference ${!...}
    eval BAR_$1=$2
    ref=BAR_$1
    echo ${!ref}
    
    Pokud to skutečně potřebuješ a nejde to rozumně napsat bez toho, tak si ovšem myslím, že sis pro implementaci vybral nevhodný jazyk.
    1.2.2005 14:49 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: bash: konstrukce proměnné obsahující v názvu parametr scriptu/funk
    To bude ono. Dik. Nemohl jsem na to přijít ani s tím eval. Dík moc. Teď už se s tím nějak poperu.
    1.2.2005 14:55 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: bash: konstrukce proměnné obsahující v názvu parametr scriptu/funk
    Pokud to skutečně potřebuješ a nejde to rozumně napsat bez toho, tak si ovšem myslím, že sis pro implementaci vybral nevhodný jazyk.
    Bohužel, musí to být v BASHi. I s tím to snad bude vcelku rozumné, alespoň doufám. Není to nic extra velikého, jen jedna fukce, která má být jádrem pro rozsáhlejší script...
    1.2.2005 15:07 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: bash: konstrukce proměnné obsahující v názvu parametr scriptu/funk
    Safr, jseš rychlejší. To je tím, že to nepoužívám. Jinak je to príma věc:
    #!/bin/bash
    foo () {
    local var=BAR_$1
    eval $var=$2
    echo ${!var}
    }
    foo Ahoj svete     # melo by vypsat "svete"
                       # uvnitr funkce by mela vzniknout promenna
                       # BAR_Ahoj="svete"
    echo $BAR_Ahoj
    exit 0
    
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    1.2.2005 15:18 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: bash: konstrukce proměnné obsahující v názvu parametr scriptu/funk
    Taková věc je skutečně príma. V TeXu s takovýma konstrukcema zacházím v jednom kuse. Jsem rád, že to jde. Už jsem se začal bát, protože jsem na takové uvažování nějak zvyklej (asi až moc)...

    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.