abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 13:33 | IT novinky

    Před 25 lety, ve čtvrtek 29. dubna 1999, byla spuštěna služba "Úschovna".

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

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

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 6
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    26.4. 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 9
    26.4. 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 47
    25.4. 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 14
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 880 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    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: 220×

    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.