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

    Byla vydána verze 0.84 telnet a ssh klienta PuTTY (Wikipedie). Podrobnosti v přehledu nových vlastností a oprav chyb a Change Logu.

    Ladislav Hagara | Komentářů: 0
    22.5. 19:44 | IT novinky

    Microsoft představil Azure Linux 4.0 a Azure Container Linux. Na konferenci Open Source Summit North America 2026 organizované konsorciem Linux Foundation a sponzorované také Microsoftem. Azure Linux 4.0 vychází z Fedora Linuxu. Azure Container Linux je založen na projektu Flatcar. Azure Linux (GitHub, Wikipedie) byl původně znám jako CBL-Mariner.

    Ladislav Hagara | Komentářů: 0
    22.5. 12:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 165 (pdf).

    Ladislav Hagara | Komentářů: 0
    22.5. 10:55 | Nová verze

    Byla vydána verze 9.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 5
    22.5. 09:33 | IT novinky

    Firefox 151 podporuje Web Serial API. Pro komunikaci s různými mikrokontroléry připojenými přes USB nebo sériové porty už není nutné spouštět Chrome nebo na Chromiu postavené webové prohlížeče.

    Ladislav Hagara | Komentářů: 8
    22.5. 04:44 | Nová verze

    Byla vydána nová stabilní verze 8.0 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 148. Přehled novinek i s náhledy v příspěvku na blogu.

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

    Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.

    Ladislav Hagara | Komentářů: 0
    21.5. 14:33 | IT novinky

    Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).

    Ladislav Hagara | Komentářů: 2
    21.5. 14:00 | Nová verze

    Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.

    Ladislav Hagara | Komentářů: 0
    21.5. 11:33 | Nová verze

    Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 10.2 a 9.8. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Vypíchnout lze CLI AI asistenta goose. Podrobnosti v poznámkách k vydání (10.2 a 9.8).

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

    Dotaz: Jak naplnit pole pomocí smyčky v bashi

    13.1.2012 11:32 Myšpulín | skóre: 8
    Jak naplnit pole pomocí smyčky v bashi
    Přečteno: 278×

    Dobrý den,

    potřeboval bych poradit, jak naplnit pole pomocí smyčky while. Mám proměnnou $a a proměnnou $b, které obsahují několik řádek textu. Potřeboval bych tyto řádky načíst do dvou polí a pak z těch polí vegenerovat výsledný sformátovaný textový soubor. Zasekl jsem se na tom, že pole se mi sice naplní, ale v momentě, kdy skončí smyčka, tak se vymaže a je prázdné:

    p=0

    echo "$a" | while read x
    do
    sablona[$p]="$x"
    p=$(( $p+1 ))
    done

    Během tohoto cylku se pole naplní, každá řádka do jedné pozice. Když do cyklu připíšu echo "${sablona[*]}" tak se krásně vypíše obsah. Když to samé udělám po ukončení cyklu, tak je pole prázdné. Nemohu přijít na to proč. Můžete mi někdo poradit? Děkuji.

    Odpovědi

    13.1.2012 12:15 NN
    Rozbalit Rozbalit vše Re: Jak naplnit pole pomocí smyčky v bashi
    Promenna, ktara obsahuje retezce oddelene novym radkem se sama chova jako pole, takze staci takto:
    echo ${a[@]}
    
    NN
    wamba avatar 13.1.2012 13:17 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: Jak naplnit pole pomocí smyčky v bashi
    p=0
    while read x do
     sablona[$p]="$x"
     p=$(( $p+1 ))
    done <<<"$a"
    
    viz. BashFAQ/001

    jestli se nepletu tak váš příklad nefunguje kvůli rouře, která spouští nový bash (někdo to možná upřesní)
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    13.1.2012 13:20 l4m4
    Rozbalit Rozbalit vše Re: Jak naplnit pole pomocí smyčky v bashi
    Odpověď na původní otázku (proč zmizí proměnná) je, že roura se spouští v subshellu. Dá se to řešit různě, např. nepoužitím roury:
    exec <<<"$a"
    while read x; do
       ...
    done
    

    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.