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 12:55 | Nová verze

    CiviCRM (Wikipedie) bylo vydáno v nové verzi 6.14.0. Podrobnosti o nových funkcích a opravách najdete na release stránce. CiviCRM je robustní open-source CRM systém navržený speciálně pro neziskové organizace, spolky a občanské iniciativy. Projekt je napsán v jazyce PHP a licencován pod GNU Affero General Public License (AGPLv3). Český překlad má nyní 45 % přeložených řetězců a přibližuje se milníku 50 %. Potřebujeme vaši pomoc, abychom se dostali dál. Pokud máte chuť přispět překladem nebo korekturou, přidejte se na platformu Transifex.

    jardaIT | Komentářů: 0
    dnes 12:22 | Bezpečnostní upozornění

    Další lokální zranitelností Linuxu je ssh-keysign-pwn. Uživatel si může přečíst obsah souborů, ke kterým má právo ke čtení pouze root, například soubory s SSH klíči nebo /etc/shadow. V upstreamu již opraveno [oss-security mailing list].

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Komunita

    Singularity (YouTube) je nejnovější otevřený film od Blender Studia. Jedná se o jejich první 4K HDR film.

    Ladislav Hagara | Komentářů: 0
    včera 16:55 | Zajímavý software

    Vyšla hra Život Není Krásný: Poslední Exekuce (Steam, ProtonDB). Kreslená point & click adventura ze staré školy plná černého humoru a nekorektního násilí. Vžijte se do role zpustlého exekutora Vladimíra Brehowského a projděte s ním jeho poslední pracovní den. Hra volně navazuje na sérii Život Není Krásný.

    Ladislav Hagara | Komentářů: 21
    včera 14:00 | Zajímavý projekt

    Společnost Red Hat představila Fedora Hummingbird, tj. linuxovou distribuci s nativním kontejnerovým designem určenou pro vývojáře využívající AI agenty.

    Pinhead | Komentářů: 6
    včera 02:22 | Zajímavý software

    Hru The Legend of Zelda: Twilight Princess od společnosti Nintendo si lze nově díky projektu Dusklight (původně Dusk) a reverznímu inženýrství zahrát i na počítačích a mobilních zařízeních. Vyžadována je kopie původní hry (textury, modely, hudba, zvukové efekty, …). Ukázka na YouTube. Projekt byl zahájen v srpnu 2020.

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

    Byla vydána nová major verze 29.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Detailní přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    13.5. 21:22 | Bezpečnostní upozornění

    Po zranitelnostech Copy Fail a Dirty Frag přichází zranitelnost Fragnesia. Další lokální eskalace práv na Linuxu. Zatím v upstreamu neopravena. Přiřazeno ji bylo CVE-2026-46300.

    Ladislav Hagara | Komentářů: 1
    13.5. 14:00 | Komunita

    Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří KDE částkou 1 285 200 eur.

    Ladislav Hagara | Komentářů: 10
    13.5. 12:55 | IT novinky

    Google na včerejší akci The Android Show | I/O Edition 2026 (YouTube) představil celou řadu novinek: Gemini Intelligence, notebooky Googlebook, novou generaci Android Auto, …

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

    Dotaz: BASH skript a vytvoreni interaktivniho menu

    14.12.2022 15:30 Jix0 | skóre: 24 | blog: Not only for humans
    BASH skript a vytvoreni interaktivniho menu
    Přečteno: 591×
    Zdravim.

    Chtel bych si upravit jeden ze svych stavajicich skriptu, tak aby jej bylo mozne ovladat ciselnymi volbami v ramci jakehosi interaktivniho menu. Uz chvili s tim bojuji a nedari se mi dosahnout ocekavaneho vysledku.

    Ve skriptu mam konstrukci select, ktera mi funguje, avsak pokud chci mit "vnorena" menu pod jednotlivymi volbami, skript se nespusti kvuli chybe parsovani a predpokladam, ze delam neco blbe, resp. ze mam konstrukci blbe zapsanou. Nicmene nemuzu ani za boha prijit na to proc. Potrebuji docilit toho aby napriklad pod volbou cislo 2, bylo dalsi menu s nekolika dalsimi polozkami.

    Skript konci s nasledujici chybou:
    ./menutest.sh: line 14: syntax error near unexpected token `opts'
    ./menutest.sh: line 14: `                 select opts in "${sub[@]}"'
    
    Pokud me nekdo dokazete navest co je spatne, moc mi tim pomuzete :-)

    Konstrukce skriptu je neco takoveho (vzor jsem prevzal z clanku, kde jsem hledal informace):
    #!/bin/bash
    
    PS3="Vyberte cislo: "
    
    items=("Item 1" "Item 2" "Item 3")
    sub=("TEST 1" "TEST 2" "TEST 3")
    
    while true; do
        select item in "${items[@]}" Quit
        do
            case $REPLY in
                1) echo "Vybrano cislo #$REPLY odpovidajici volbe $item"; break;;
                2) echo "Vybrano cislo #$REPLY odpovidajici volbe $item"; break;;
                     select opts in "${sub[@]}"
                          do
                             case $REPLY in
                            1) echo "TEST OK"; break;;
                             esac
                          done
                3) echo "Vybrano cislo #$REPLY odpovidajici volbe $item"; break;;
                $((${#items[@]}+1))) echo "Konec!"; break 2;;
                *) echo "Neznama volba $REPLY"; break;
            esac
        done
    done
    If you will not cooperate, you are to be executed! | Starting as a DJ

    Řešení dotazu:


    Odpovědi

    Řešení 1× (Jix0 (tazatel))
    14.12.2022 16:31 neal_cz | skóre: 29
    Rozbalit Rozbalit vše Re: BASH skript a vytvoreni interaktivniho menu
    Třeba tak?
    #!/bin/bash
     
    PS3="Vyberte cislo: "
     
    items=("Item 1" "Item 2" "Item 3")
    sub=("TEST 1" "TEST 2" "TEST 3")
     
    while true; do
        select item in "${items[@]}" Quit
        do
            case $REPLY in
                1) echo "Vybrano cislo #$REPLY odpovidajici volbe $item"; break;;
                2) echo "Vybrano cislo #$REPLY odpovidajici volbe $item";
                     select opts in "${sub[@]}"
                          do
                             case $REPLY in
                            1) echo "TEST OK"; break;;
                             esac
                          done
                          break;;
                3) echo "Vybrano cislo #$REPLY odpovidajici volbe $item"; break;;
                $((${#items[@]}+1))) echo "Konec!"; break 2;;
                *) echo "Neznama volba $REPLY"; break;
            esac
        done
    done
    
    15.12.2022 13:44 Jix0 | skóre: 24 | blog: Not only for humans
    Rozbalit Rozbalit vše Re: BASH skript a vytvoreni interaktivniho menu
    Diky. To je ono. Me sice shellcheck vyhazoval chybu na radku 13, ale asi jsem u toho sedel dlouho a nemohl prijit na to co tam mam spatne. Nyni to funguje.
    If you will not cooperate, you are to be executed! | Starting as a DJ
    14.12.2022 17:20 X
    Rozbalit Rozbalit vše Re: BASH skript a vytvoreni interaktivniho menu
    Na radku 13 mas predcasne ukoceny case.
    15.12.2022 03:40 tttttttttttttt
    Rozbalit Rozbalit vše Re: BASH skript a vytvoreni interaktivniho menu
    Na podobné věci používám fzf:

    echo "Item 1\nItem 2\nItem 3" | fzf

    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.