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:00 | Upozornění

    Cloudflare, tj. společnost poskytující "cloudové služby, které zajišťují bezpečnost, výkon a spolehlivost internetových aplikací", má výpadek.

    Ladislav Hagara | Komentářů: 4
    dnes 04:22 | Pozvánky

    Letos se uskuteční již 11. ročník soutěže v programování Kasiopea. Tato soutěž, (primárně) pro středoškoláky, nabízí skvělou příležitost procvičit logické myšlení a dozvědět se něco nového ze světa algoritmů – a to nejen pro zkušené programátory, ale i pro úplné začátečníky. Domácí kolo proběhne online od 22. 11. do 7. 12. 2025 a skládá se z 9 zajímavých úloh různé obtížnosti. Na výběru programovacího jazyka přitom nezáleží – úlohy jsou

    … více »
    SoutezKasiopea | Komentářů: 0
    dnes 04:11 | Nová verze

    Byla vydána nová verze 2.52.0 distribuovaného systému správy verzí Git. Přispělo 94 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

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

    VKD3D-Proton byl vydán ve verzi 3.0. Jedná se fork knihovny vkd3d z projektu Wine pro Proton. Knihovna slouží pro překlad volání Direct3D 12 na Vulkan. V přehledu novinek je vypíchnuta podpora AMD FSR 4 (AMD FidelityFX Super Resolution 4).

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

    Poštovní klient Thunderbird byl vydán v nové verzi 145.0. Podporuje DNS přes HTTPS nebo Microsoft Exchange skrze Exchange Web Services. Ukončena byla podpora 32bitového Thunderbirdu pro Linux.

    Ladislav Hagara | Komentářů: 2
    včera 02:33 | IT novinky

    U příležitosti státního svátku 17. listopadu probíhá na Steamu i GOG.com již šestý ročník Czech & Slovak Games Week aneb týdenní oslava a také slevová akce českých a slovenských počítačových her.

    Ladislav Hagara | Komentářů: 0
    16.11. 19:33 | Nová verze

    Byla vydána nová verze 9.19 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze například nový balíček BirdNET-Go, tj. AI řešení pro nepřetržité monitorování a identifikaci ptáků.

    Ladislav Hagara | Komentářů: 0
    16.11. 02:22 | Nová verze

    Byla vydána nová verze 3.38 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.10 souvisejícího programovacího jazyka Dart (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    16.11. 01:33 | Nová verze

    Organizace Apache Software Foundation (ASF) vydala verzi 28 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 0
    15.11. 16:11 | Nová verze

    Byl vydán Debian 13.2, tj. druhá opravná verze Debianu 13 s kódovým názvem Trixie. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (23%)
     (15%)
     (23%)
     (16%)
     (16%)
    Celkem 367 hlasů
     Komentářů: 16, poslední 12.11. 18:21
    Rozcestník

    Dotaz: Bash expanzia

    29.1.2010 20:02 Patrik Uhrak | skóre: 31 | blog: pato
    Bash expanzia
    Přečteno: 240×

    Zdravim, vytvoril som si skript, ktory funguje, ale da sa to aj efektivnejsie. Aspon myslim. Nie je podstatne, aky skript ani on samotny, ide skor o toto:

     

    Ak zapisem

    echo {1..100}

    vysledkom budu vsetky cisla od 1 do 100 vratane.

     

    Ak by som ale zapisal takto

    A=1; B=100; echo {"$A".."$B"};

    vysledok bude takyto {1..100}

     

    A nie a nie sa dopratat, ci je to mozne a ak ano, kde je chyba a ako ma spravne vyzerat zapis. Nechcem, aby si niekto myslel, ze som sa nesnazil, ale po dvoch dnoch patrania, skusania roznych variant zapisu uz neviem, kde hladat. Takze vopred dakujem za odpoved.


    Řešení dotazu:


    Odpovědi

    29.1.2010 20:20 12345 | skóre: 41 | blog:
    Rozbalit Rozbalit vše Re: Bash expanzia

    Viz manuál:

    Bash does not apply any syntactic interpretation to the context of the expansion or the text between the braces.

    Jde to nahradit například takto:

    seq -s ' ' $A $B
    
    29.1.2010 21:01 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: Bash expanzia

    Pekne vymyslene. Funkcne a robi to, co som ziadal. Ale nie celkom som si bol vedomy, ako je dolezite, aby som to obsirnejsie vysvetlil. Niecim takymto:

    echo {"$A".."$B"}.png

    som chcel dostat zoradeny vypis obrazkov pre convert, lebo postupnost je dolezita v tomto pripade. Lenze, toto nefunguje, ako si mi ukazal. Zatial to mam takto, co aj funguje, ale podla mna to je sice funkcne no nie najspravnejsie riesenie. Tu je ta cast :

     

    for i in `seq "$START_POS" "$END_POS"

    do

    ARRAY_SCRNSHOTS["$i"]="$i".png

    done

    convert ${ARRAY_SCRNSHOTS[*]} -append "$COUNT"_down.png

    let COUNT++

     

    Napada aj ine riesenie ? Alebo je to v poriadku, najma ked je to funkcne? Cital som, ze prenositelnost sa znizuje pouzitim poli, ale tak bash je snad vsade a toto aj tak nepojde nikde do sveta.

    Ten tvoj navrh je vyborny, len ako tam dat to, aby bralo *.png subory?

    29.1.2010 21:11 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Bash expanzia
    seq -s ' ' -f %g.png $START_POS $END_POS
    29.1.2010 21:15 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Bash expanzia

    Jinak mi není jasné, co je to za jazyk (příkaz let mi asociuje nějaký historický dialekt basicu), ale jestli správně tuším, co jste měl na mysli, tak to se typicky dělá takto:

      for f in *.png; do
        convert ... "$f" "${f%.png}_down.png"
      done
    
    29.1.2010 22:44 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Bash expanzia
    Ak pominieme chybajuci spatny apostrof, tak je to bash ako vysity. let a++ je to iste ako ((a++))
    If you hold a Unix shell up to your ear, you can you hear the C.
    29.1.2010 21:00 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Bash expanzia
    A=1; B=100; eval echo {"$A".."$B"};
    If you hold a Unix shell up to your ear, you can you hear the C.
    29.1.2010 21:03 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: Bash expanzia
    Uzasne. :) Dakujem mockrat, snad vam to raz vynahradim.
    29.1.2010 21:03 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Bash expanzia
    eval nevytvara novy proces na rozdiel od seq. Pri jednorazovom pouziti je to uplne jedno, ale vo celkom cykle...
    If you hold a Unix shell up to your ear, you can you hear the C.
    29.1.2010 21:40 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Bash expanzia
    seq toho umí trochu víc.
    In Ada the typical infinite loop would normally be terminated by detonation.
    30.1.2010 00:24 l4m4
    Rozbalit Rozbalit vše Re: Bash expanzia
    Jelikož zde není seq ve vnitřním cyklu, naopak je vně, aby se ten cyklus vytvořil, tak to bude v tomto případě zhruba putna...

    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.