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

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

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Eric Lengyel dobrovolně uvolnil jako volné dílo svůj patentovaný algoritmus Slug. Algoritmus vykresluje text a vektorovou grafiku na GPU přímo z dat Bézierových křivek, aniž by využíval texturové mapy obsahující jakékoli předem vypočítané nebo uložené obrázky a počítá přesné pokrytí pro ostré a škálovatelné zobrazení písma, referenční ukázka implementace v HLSL shaderech je na GitHubu. Slug je volným dílem od 17. března letošního

    … více »
    NUKE GAZA! 🎆 | Komentářů: 1
    včera 15:11 | Zajímavý projekt

    Sashiko (GitHub) je open source automatizovaný systém pro revizi kódu linuxového jádra. Monitoruje veřejné mailing listy a hodnotí navrhované změny pomocí umělé inteligence. Výpočetní zdroje a LLM tokeny poskytuje Google.

    Ladislav Hagara | Komentářů: 12
    včera 04:44 | Zajímavý software

    Cambalache, tj. RAD (rapid application development) nástroj pro GTK 4 a GTK 3, dospěl po pěti letech vývoje do verze 1.0. Instalovat jej lze i z Flathubu.

    Ladislav Hagara | Komentářů: 0
    20.3. 14:55 | Nová verze

    KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 10.0.0 (𝕏). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    20.3. 13:22 | IT novinky

    Letošní Turingovou cenu (2025 ACM A.M. Turing Award, Nobelova cena informatiky) získali Charles H. Bennett a Gilles Brassard za základní přínosy do oboru kvantové informatiky, které převrátily pojetí bezpečné neprolomitelné komunikace a výpočetní techniky. Jejich protokol BB84 z roku 1984 umožnil fyzikálně zaručený bezpečný přenos šifrovacích klíčů, zatímco jejich práce o kvantové teleportaci položila teoretické základy pro budoucí kvantový internet. Jejich práce spojila fyziku s informatikou a ovlivnila celou generaci vědců.

    Ladislav Hagara | Komentářů: 17
    20.3. 04:44 | Zajímavý článek

    Firefox 149 dostupný od 24. března přinese bezplatnou vestavěnou VPN s 50 GB přenesených dat měsíčně (s CZ a SK se zatím nepočítá) a zobrazení dvou webových stránek vedle sebe v jednom panelu (split view). Firefox Labs 149 umožní přidat poznámky k panelům (tab notes, videoukázka).

    Ladislav Hagara | Komentářů: 2
    20.3. 00:33 | Nová verze

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

    Ladislav Hagara | Komentářů: 0
    20.3. 00:11 | Zajímavý software

    Dle plánu byla vydána Opera GX pro Linux. Ke stažení je .deb i .rpm. V plánu je flatpak. Opera GX je webový prohlížeč zaměřený na hráče počítačových her.

    Ladislav Hagara | Komentářů: 7
    19.3. 19:22 | Nová verze

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.27.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (7%)
     (1%)
     (12%)
     (29%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1133 hlasů
     Komentářů: 27, poslední 17.3. 19:26
    Rozcestník

    Vtipná konstrukce v shellu

    28.1.2018 21:33 | Přečteno: 2175×

    Objevení chyby v shellu, aneb jak (ne)funguje počítání v různých klonech

    Jelikož jsem líný programátor, tak v mén bashovském skriptu se vyskytují poněkud komprimované výrazy typu:
     $(($VAL1-$VAL2)) 
    Tedy vyskytovaly dodnes, když jsem zjistil, že pokud je busyboxu definováno VAL2=-1, tak celý skript padne na chybném výrazu (dvě mínus vedle sebe). Zajímavé, že v bashi to fungovalo.

    BTW jsem ani nevěděl, že se nemusí ty "$" uvnitř "$(())" u proměnných používat.

    Poslal jsem tedy bug report (musím pochválit, opraveno během hodiny), ale ještě jsem se v tom vrtal (teď už v bashi) a následující chování je taky vtipné i když nejspíš korektní:
     
    $((x+++y)) #inkrementuje x 
    $((x+++1)) #inkrementuje x 
    $((1+++y)) #inkrementuje y 
    $((1+++1)) #funguje jako součet = 2, nejspíš to postinkrementuje tu první "1" 
    

    Ale nejvíc jsem byl překvapený po tom, co jsem z legrace vykonstruoval frankensteinové monstrum a ono se spustilo!:
     echo $x $((0 + --++--++--x--++--++-- + 0)) $x 
    Na mém bashi (GNU 4.4.12(1)-release) se překvapivě provede (s x=0). Schválně si ale v komentech bez spuštění tipněte, jaký výsledek to vyhodí. Na mém stroji mi přijde výsledek nelogický.

    P.S. Jestli to je chyba bashe, tak by se mě hodila pomoc, jak to vysvětlit v bugreportu pomocí priority operátorů :-D.        

    Hodnocení: 80 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    dolik.rce avatar 28.1.2018 22:01 dolik.rce
    Rozbalit Rozbalit vše Re: Vtipná konstrukce v shellu
    Nevím jak v shellu, ale třeba v C++ je použití preincrementu a postincrementu v jednom statementu undefined behavior. Takže to legálně může vrátit úplně cokoliv :-)
    29.1.2018 14:28 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: Vtipná konstrukce v shellu
    Jj, ale vypadá to, že bash preferuje postinkrement prvního operandu.
    Bedňa avatar 29.1.2018 01:19 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Vtipná konstrukce v shellu
    Tak to je riadna pičovina hodná xkcd, dík za fakt humorný blog :-D Musel som to jebnúť na Reddit aby ti s tím pomohli :-D
    KERNEL ULTRAS video channel >>>
    29.1.2018 14:32 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: Vtipná konstrukce v shellu
    Mám ještě jednu vtipnější :-P.

    Ten reddit je asi tohle, že?
    Bedňa avatar 29.1.2018 19:45 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Vtipná konstrukce v shellu
    Mám ještě jednu vtipnější :-P.
    Daj to sem :)
    Ten reddit je asi tohle, že?
    Jj to je ono.
    KERNEL ULTRAS video channel >>>
    30.1.2018 14:45 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: Vtipná konstrukce v shellu
    To není věc na mikrozápisek napsaný za půl hoďky.
    Bedňa avatar 30.1.2018 17:57 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Vtipná konstrukce v shellu
    Tak to už asi taká sranda nebude ;)
    KERNEL ULTRAS video channel >>>
    Bedňa avatar 30.1.2018 20:17 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Vtipná konstrukce v shellu
    Daj to kámo.
    KERNEL ULTRAS video channel >>>
    31.1.2018 21:42 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: Vtipná konstrukce v shellu
    No časem, on to někdo musí napsat že :-P . Respektive někdo musí přepsat kód toho projektu aby to při zveřejnění nebyl zas až takový cringe :-D.
    Bedňa avatar 1.2.2018 18:50 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Vtipná konstrukce v shellu
    Tak ak to ostane čas, tešíme sa :-)
    KERNEL ULTRAS video channel >>>

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.