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:33 | Zajímavý projekt

    Workshop o umělé inteligenci v Dartmouthu proběhl před 70 lety, od 18. června do 17. srpna 1956. Dvouměsíční soustředění 6–11 informatiků, iniciované Johnem McCarthym, položilo základy oboru umělé inteligence.

    |🇵🇸 | Komentářů: 0
    dnes 03:00 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 7.1 oznámil Linus Torvalds vydání Linuxu 7.2. Podrobný přehled novinek a vylepšení na Linux Kernel Newbies nebo LWN.net: první a druhá polovina začleňovacího okna.

    Ladislav Hagara | Komentářů: 1
    včera 18:55 | Komunita

    Debian dnes slaví 33 let. Ian Murdock oznámil vydání "Debian Linux Release" 16. srpna 1993.

    Ladislav Hagara | Komentářů: 1
    včera 04:22 | Komunita

    Probíhá hlasování o používání LLM při vývoji Debianu. Vývojáři Debianu mají na výběr 9 možností (návrhy A až H a žádný z nich).

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

    Omarchy je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové major verzi 4.0.0 - The Quattro Release. Videopředstavení na YouTube. Celý desktop shell byl přepsán do Quickshellu. Přidána byla podpora pluginů.

    Ladislav Hagara | Komentářů: 1
    15.8. 13:33 | IT novinky

    Francouzská Ústavní rada zamítla zákaz používání sociálních sítí dětem mladším 15 let. Francouzská obdoba ústavního soudu uvedla, že opatření představuje nepřiměřený zásah do svobody projevu. Francouzský parlament zákaz schválil na konci července, začít platit měl od září. Šlo o první zákaz sociálních sítí pro děti v Evropě. Členové Ústavní rady se domnívají, že ustanovení „představuje zásah, který není přiměřený, nezbytný ani

    … více »
    Ladislav Hagara | Komentářů: 1
    14.8. 16:33 | Zajímavý projekt

    Open-source trackball Ploopy Adept má novou verzi nazvanou A+. Stále jde o symetrický desktopový trackball s šasi z 3D tiskárny a firmwarem QMK. Novinkami jsou dvojice tlačítek, jimiž půjde také otáčet, a volitelná opěrka ruky. Funkcionalita firmwaru je rozšířena o gesta, vrstvy a možnost konfigurace za běhu. Schémata a kód jsou jako obvykle na GitHubu. A+ půjde předobjednat za 99 CAD (bez dopravy a cla/DPH).

    |🇵🇸 | Komentářů: 3
    14.8. 14:33 | IT novinky

    Prusa Research představil nové modely svých 3D tiskáren: Prusa XL+, CORE One+ (Gen 2) a CORE One L+.

    Ladislav Hagara | Komentářů: 1
    14.8. 13:33 | Nová verze

    Crown je multiplatformní open source herní engine. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT a GPLv3+. Byla vydána nová verze 0.64. Vyzkoušet lze online demo.

    Ladislav Hagara | Komentářů: 0
    14.8. 03:44 | Nová verze

    NVIDIA na konci ledna vydala v beta verzi nativního linuxového klienta své cloudové herní služby GeForce NOW. Včera oznámila ukončení beta verze a oficiální podporu Linuxu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (18%)
     (30%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2406 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník


    Dotaz: Jak předat pole funkci?

    30.7.2012 23:23 MM
    Jak předat pole funkci?
    Přečteno: 476×
    Ahoj, mám takovej kód a potřebuji přenést celé pole do funkce foo aby i v té funkci foo to bylo pořád pole, ale prostě se nedaří.. Neporadí někdo? Díky
    function foo {
    printf "$1"
    }
    
    POLE=()
    POLE+=("/home/foo")
    POLE+=("/home/foo/add")
    POLE+=("/home/foo/cd")
    POLE+=("/home/bar")
    
    foo "$POLE"
    

    Řešení dotazu:


    Odpovědi

    31.7.2012 06:42 Mr.S1lent.cz
    Rozbalit Rozbalit vše Re: Jak předat pole funkci?
    Mohu se zeptat, jaky to ma vyznam? :-) Jinak by taky nebylo spatne napsat, o jaky jazyk se jedna - treba v takovem c/c++ muzes vytvorit double pointer a do nej soupnout pointery na funkce, avsak se shodnym vstupem a vystupem :-)
    31.7.2012 09:02 l4m4
    Rozbalit Rozbalit vše Re: Jak předat pole funkci?
    Předpokládám, že je to bash.

    foo "${POLE[@]}"

    a ve funkci

    a=("$@")
    31.7.2012 10:40 MM
    Rozbalit Rozbalit vše Re: Jak předat pole funkci?
    Předpokládám, že je to bash.
    Ano je to BASH

    a co když ale potřebuji předat ještě další parametry?
    foo "${POLE[@]}" "cislo" "string"
    pokud ve funkci použiji
    a=("$@")
    tak ve funkci neobsahuje $2 předané číslo ale data z pole, to platí i pro $3. Nějaké jiné řešení? Díky
    31.7.2012 10:48 l4m4
    Rozbalit Rozbalit vše Re: Jak předat pole funkci?
    Předej ty ostatní parametry jako první. Použij shift.

    V principu lze taky předat to pole referencí, tj. jen jméno proměnné, akorát symbolické dereference polí jsou trochu svérázné, viz 26-12 v http://www.linuxtopia.org/online_books/advanced_bash_scripting_guide/arrays.html
    31.7.2012 11:36 MM
    Rozbalit Rozbalit vše Re: Jak předat pole funkci?
    Tak jsem zkusil první předat string cislo a nakonec pole, ale vysledek je uplne stejny :( Nějaké jine (jednodussi pro mne) použití by nebylo? Díky
    31.7.2012 12:01 Kit
    Rozbalit Rozbalit vše Re: Jak předat pole funkci?
    Pokud nám prozradíš, k čemu to vlastně potřebuješ, možná přijdeme na mnohem jednodušší řešení.

    Zákazník, který kupuje vrták, vlastně nechce vrták, ale díru.
    31.7.2012 12:43 MM
    Rozbalit Rozbalit vše Re: Jak předat pole funkci?
    Tak problém bude patrně v objemu dat :( jelikož pole obsahuje více jak 800 000 položek, proto to udělám raději přes soubor. Ale děkuji za pomoc ;)
    31.7.2012 16:42 l4m4
    Rozbalit Rozbalit vše Re: Jak předat pole funkci?
    Pokud zpracováváš pole o 800000 položkách v shellu, troufám si tvrdit, že děláš něco špatně.
    31.7.2012 19:57 Kit
    Rozbalit Rozbalit vše Re: Jak předat pole funkci?
    Hmm, to je vážné. Takové úlohy se řeší úplně jinak. AWK jsi zkusil?

    Ovšem o řešené úloze mám stále jen mlhavou představu, jejíž řešení je velmi jednoduché a rychlé. 800 kpoložek není moc.

    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.