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 14:33 | Komunita

    Do základního systému NetBSD -current byl přidán nový editor atto jako alternativa k editorům vi a xedit.

    Ladislav Hagara | Komentářů: 1
    dnes 14:11 | IT novinky

    Společnost System76 představila kompaktní 11litrový Thelio Prime Desktop. S procesorem AMD Ryzen 9000. S Pop!_OS 24.04 LTS s desktopovým prostředím COSMIC nebo Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 0
    dnes 13:44 | Humor

    Čínská státní televize pozastavila vysílání španělské La Ligy a čínské internetové platformy omezily obsah s Kylianem Mbappém poté, co slavný fotbalista ve francouzském pořadu The Bridge mluvil o svém oblíbeném memu, v němž je jeho tvář vložena do portrétu zobrazujícího diktátora Mao Ce-tunga. 'Můj oblíbený mem je ten, na kterém dali můj obličej na čínského diktátora. To mě opravdu rozesmívá. S přáteli ho používám pořád' řekl,

    … více »
    Pendrekama do nich❗ | Komentářů: 4
    dnes 13:22 | IT novinky

    Při příležitosti oslav Dne vzniku samostatného československého státu (28. října) byly uděleny medaile Za zásluhy tvůrci aplikace Záchranka Filipu Maleňákovi, vědci v oblasti umělé inteligence Tomáši Mikolovovi a Olze Štěpánkové, vědkyni zabývající se kybernetikou, robotikou a strojovým učením, průkopnici v oblastech výuky a využití umělé inteligence v medicínském inženýrství.

    Pendrekama do nich❗ | Komentářů: 2
    dnes 01:33 | IT novinky

    Apple představil nový iPad mini, iMac s čipem M6, 14palcový MacBook Pro s čipem M6 a MacBook Pro s PROLED XDR displejem – první Mac s dotykovým ovládáním.

    Ladislav Hagara | Komentářů: 4
    včera 23:22 | Zajímavý projekt

    Nedávno představený projekt mapSTL.com řeší budoucnost. 𝕏: "Netušil jsem, kolik patentů na generování map existuje. Existují patenty na generování fantasy map 🫣. Cokoliv je na 3D tiskárnu a tvoří to produkt, bude to mít patenty. Tak bacha na to!" … více »

    Ladislav Hagara | Komentářů: 3
    včera 18:55 | Nová verze

    Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.4 (𝕏). Přehled novinek a vylepšení v poznámkách k vydání.

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

    Byla objevena zranitelnost Tailworm v Tailscale a Headscale umožňující lokální eskalaci práv přihlášeného uživatele. Následně byla v Tailscale v opravené verzi 1.104.4+ změněna architektura aplikace. Viz příspěvek na blogu Tailscale.

    vencour | Komentářů: 0
    27.10. 18:11 | Nová verze

    Byl vydán Mozilla Firefox 159.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 159 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 1
    27.10. 14:11 | IT novinky

    Nasazení softwaru, který nyní používá ve svých autech pro čínský trh, zvažuje automobilový koncern Volkswagen také v Evropě, kde by se mohl používat v budoucích vozech značek Volkswagen, Škoda a Cupra. Základem pro budoucí evropské modely by se mohla stát takzvaná China Electronic Architecture, elektronická architektura vyvinutá pro čínské modely ve spolupráci s tamní automobilkou Xpeng.

    Ladislav Hagara | Komentářů: 47
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2940 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: Bash indirect reference

    2.8.2011 14:46 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
    Bash indirect reference
    Přečteno: 462×
    Zdravím,

    Již nějakou dobu bloumám nad tím, jak u pole předaného funkci názvem zjistím počet prvků.

    první fáze (nepřímá reference na celé pole) se povedla
    function enum () {
       LocalArray= "$1[*]"
       echo ${!LocalArray} # vypíše obsah pole 
       echo ${#!LocalArray} # Tady bych chtěl vypsat počet prvků, 
         tento zápis ale bash nebere
       .....
    
    }
    Možná jdu na problém zbytečně složitě, ale ani přes google nemůžu najít odpověď

    Předem díky za pomoc

    Řešení dotazu:


    Odpovědi

    2.8.2011 15:25 marek
    Rozbalit Rozbalit vše Re: Bash indirect reference
    Dobry den.

    Jestli jsem to dobre pochopil:

    marek:~/bash$ function enum () {
    >    LocalArray="$1"
    >    echo ${#LocalArray}
    > 
    > }
    marek:~/bash$ 
    marek:~/bash$ pole=(nula jedna dva tri)
    marek:~/bash$ 
    marek:~/bash$ enum pole
    4
    marek:~/bash$
    
    Marek
    3.8.2011 07:43 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: Bash indirect reference
    Zajímavé přímočaré řešení :D

    kdysi jsem tenhle problém řešil, a mám dojem, že to přímé přiřazení nefungovalo, a muselo se to obcházet právě tím nepřímým odkazem .. a teď , když jsem zase hodlal něco pro bash napsat, vydal jsem se stejnou cestou...

    Děkuji za řešení.. doufám, že nemá nějaké skryté zádrhele.
    3.8.2011 10:01 marek
    Rozbalit Rozbalit vše Re: Bash indirect reference
    Dobry den.

    No ono to bohuzel ma takovou neprijemnou vlastnost:

    marek:~$ function enum () {
    >     LocalArray="$1"
    >     echo ${#LocalArray}
    >  }
    marek:~$ pole=(nula jedna dva )
    marek:~$ enum pole
    4
    

    Pocitame totiz pocet znaku ve slove "pole"

    Takze se za blamaz omlouvam a sypu si popel na hlavu.

    Marek
    2.8.2011 15:26 NN
    Rozbalit Rozbalit vše Re: Bash indirect reference
    echo ${#array[*]}
    echo ${#array[@]}
    Je tam drobny rozdil, ale ten uz si nepamatuju..

    NN
    2.8.2011 16:23 zulu
    Rozbalit Rozbalit vše Re: Bash indirect reference
    Kdysi jsem podobnou věc řešil a nevypadá to, že by se v tomto směru něco změnilo. Takže pokud nechceš vytvářet nové pole, tak asi budeš muset použít eval.
    3.8.2011 11:00 marek
    Rozbalit Rozbalit vše Re: Bash indirect reference

    Dobry den.

    marek:~$ function enum () {
    >     eval "echo \${#${1}[@]}"
    >  }
    marek:~$ pole=(nula jedna "dva tri")
    marek:~$ enum pole
    3
    
    4.8.2011 23:39 Milan
    Rozbalit Rozbalit vše Re: Bash indirect reference
    Děkuji za uvedeni věcí na pravou míru... :D

    Milan

    Založit nové vlákno • Nahoru

    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.