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 19:22 | Nová verze

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.27.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

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

    Byly publikovány informace (technické detaily) o bezpečnostním problému Snapu. Jedná se o CVE-2026-3888. Neprivilegovaný lokální uživatel může s využitím snap-confine a systemd-tmpfiles získat práva roota.

    Ladislav Hagara | Komentářů: 2
    včera 03:33 | Zajímavý software

    Nightingale je open-source karaoke aplikace, která z jakékoliv písničky lokálního alba (včetně videí) dokáže oddělit vokály, získat text a vše přehrát se synchronizací na úrovni jednotlivých slov a hodnocením intonace. Pro separaci vokálů využívá UVR Karaoke model s Demucs od Mety, texty písní stahuje z lrclib.net (LRCLIB), případně extrahuje pomocí whisperX, který rovněž využívá k načasování slov. V případě audiosouborů aplikace na

    … více »
    NUKE GAZA! 🎆 | Komentářů: 2
    18.3. 18:22 | Nová verze

    Po půl roce vývoje od vydání verze 49 bylo vydáno GNOME 50 s kódovým názvem Tokyo (Mastodon). Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 21
    18.3. 17:22 | Nová verze

    Článek na stránkách Fedora Magazinu informuje o vydání Fedora Asahi Remixu 43, tj. linuxové distribuce pro Apple Silicon vycházející z Fedora Linuxu 43.

    Ladislav Hagara | Komentářů: 2
    18.3. 13:33 | Pozvánky

    Byl zveřejněn program konference Installfest 2026. Konference proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13. Vstup zdarma.

    Ladislav Hagara | Komentářů: 3
    18.3. 03:55 | Nová verze

    Byla vydána Java 26 / JDK 26. Nových vlastností (JEP - JDK Enhancement Proposal) je 10. Odstraněno bylo Applet API.

    Ladislav Hagara | Komentářů: 12
    17.3. 23:55 | Nová verze

    Byla vydána nová verze 260 správce systému a služeb systemd (Wikipedie, GitHub). Odstraněna byla podpora skriptů System V. Aktualizovány byly závislosti. Minimální verze Linuxu z 5.4 na 5.10, OpenSSL z 1.1.0 na 3.0.0, Pythonu z 3.7.0 na 3.9.0…

    Ladislav Hagara | Komentářů: 27
    17.3. 18:11 | Nová verze

    Byla vydána nová verze 5.1 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    17.3. 04:55 | Nová verze

    Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.

    Ladislav Hagara | Komentářů: 12
    Které desktopové prostředí na Linuxu používáte?
     (16%)
     (7%)
     (1%)
     (11%)
     (29%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1115 hlasů
     Komentářů: 27, poslední 17.3. 19:26
    Rozcestník

    Dotaz: bash a spojeni vstupu s promnenou - neznalost syntaxe

    29.10.2009 11:48 Jcas | skóre: 19 | blog: linux v rukou ...
    bash a spojeni vstupu s promnenou - neznalost syntaxe
    Přečteno: 384×
    Dobrý den poprosím o radu, protože se mi nedaří najít řešení.

    První části scriptu definuji proměnné a počítám s tím, že se tyto propěné budou v praxi editovat. Tzn. že občas nějaká další přibude, nebo se nějaká odstraní. A z toho důvodu se snažím script uděla tak, aby tyto klíčová slova se nevyskytovali dále ve scriptu, abych nemusel přidávat proměnou na 10 míst někde ve scriptu.

    příklad
    1p=(1h 2h 3h 4h)
    1h="xterm thunar xclock"
    2h="xterm mousepad"
    3h="xterm gedit"
    atd.
    
    A V druhé části potřebuji tyto proměné vytáhnout. Základ mám. Script mi zkontroluje jednu z hodnot v poli a nyní potřebuji jen, aby se provedli příkazy, které nastartují to co mají.

    Mám uživatelský vstup, který je zapsán v proměné x a který se rovná jedné hodnotě v poli .
    read x
    # x == 1h, nebo 2h, nebo 3h atd.
    A nyní potřebuji, aby se nastartovaly příslušné programy a právě kvůly následné editaci se chci vyhnout, abych v této části použil něco jako
    if [ $x == $1h ] atd.
    Zkošel jsem eval, nebo něco jako ${$x} ale nic mi nefunguje.

    Možná jdu na to úplně blbě a proto děkuji za každou radu.

    Odpovědi

    29.10.2009 11:55 l4m4
    Rozbalit Rozbalit vše Re: bash a spojeni vstupu s promnenou - neznalost syntaxe
    Proměnné, kromě speciálních, začínají písmenem nebo podtržítkem. Takže syntakticky to je nesmysl celé od začátku.
    29.10.2009 12:16 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: bash a spojeni vstupu s promnenou - neznalost syntaxe
    Přiznám se, že jsem vůbec nepochopil, o co ti jde.
    29.10.2009 12:30 jirka
    Rozbalit Rozbalit vše Re: bash a spojeni vstupu s promnenou - neznalost syntaxe
    viz prispevek od l4m4 - promenne nemohou zacinat cislici.

    Pokud jsem pochopil Vas dotaz spravne, tak potrebujete z

    h1="hodnota 1"
    h2="hodnota 2"
    h3="hodnota 3"
    
    read x
    ...
    
    tak po zadani napr. "h2" chcete do pomocne promenne ulozit hodnotu promenne $h2.
    Mozna to jde jednoduseji, ale me tak narychlo napadlo napr. pomoci eval:
    eval y=\$$x
    a pak uz si s promennou $y delejte co chcete.

    29.10.2009 13:05 Jirka P
    Rozbalit Rozbalit vše Re: bash a spojeni vstupu s promnenou - neznalost syntaxe
    Přesně tak, eval je na podobné případy klasika.

    Další možnost v bashi je použít nepřímé reference, takhle:
    
    read x
    echo ${!x}
    
    29.10.2009 15:52 Jcas | skóre: 19 | blog: linux v rukou ...
    Rozbalit Rozbalit vše Re: bash a spojeni vstupu s promnenou - neznalost syntaxe
    Evidentně se ještě ptám blbě. (to co jsem napsal byl příklad. Moje proměné nezačínají číslem.)
    p1=(h1 h2 h3)
    h1="xterm"
    
    atd
    read x
    Prověřím, že x obsaženo v poli pomocí for i in ....

    Nyní mám
    [ "$x" = "$i" ]
    A problém
    $x  #h1 neni prikaz a hlavne nevim jestli se 
    $x == h1 nebo se == h2 nebo ...
    
    eval y='$'$x #opet h1 neni prikaz
    Vím že v $x je jedna z hodnot, které jsou v poli, ale nejsu schopen spustit xterm.
    29.10.2009 16:22 l4m4
    Rozbalit Rozbalit vše Re: bash a spojeni vstupu s promnenou - neznalost syntaxe
    Jestli rozumím správě, problém je nakonec
    x=xterm
    $x
    
    Ale to funguje.

    Druhý způsob, tak to mohu chápat, je, že nedokážeš získat prvek pole:
    p=(a b c)
    i=1
    echo ${p1[$i]}
    
    ale nevidím, že bys iteroval přes ta pole numericky.

    Třetí možnost je získání hodnoty dvojité reference:
    x=xterm
    y=x
    echo ${!y}
    
    ale to už tu bylo zodpovězeno.

    Pak už fakt nevím, na co se ptáš.
    29.10.2009 18:14 Jcas | skóre: 19 | blog: linux v rukou ...
    Rozbalit Rozbalit vše Re: bash a spojeni vstupu s promnenou - neznalost syntaxe
    Děkuji mockrát Ta dvojitá reference bylo přesně to co jsem potřeboval.

    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.