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í
×
včera 13:00 | Komunita

Při prvním spuštění Ubuntu 18.04 LTS (Bionic Beaver) je spuštěn nástroj Ubuntu Report. Pokud uživatel souhlasí, jsou pomocí tohoto nástroje odeslány do Canonicalu informace o daném počítači (doba instalace, počet procesorů, rozlišení displeje, velikost paměti, časová zóna, ...). V červnu byly zveřejněny první statistiky. Podrobnější statistiky jsou nově k dispozici na samostatné stránce.

Ladislav Hagara | Komentářů: 10
včera 01:00 | Pozvánky

O víkendu probíhá v Košicích pravidelné setkání příznivců otevřených technologií OSS Víkend. Na programu je řada zajímavých přednášek a workshopů.

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

Byla vydána nová verze 1.3 otevřeného, licenčními poplatky nezatíženého, univerzálního ztrátového formátu komprese zvuku Opus (Wikipedie) a jeho referenční implementace libopus. Vylepšena byla například detekce, zda se jedná o řeč nebo o hudbu. Přidána byla podpora prostorového zvuku (immersive audio) dle plánovaného RFC 8486. Podrobnosti a zvukové ukázky na demo stránce.

Ladislav Hagara | Komentářů: 0
18.10. 22:33 | Nová verze

Bylo vydáno Ubuntu 18.10 s kódovým názvem Cosmic Cuttlefish (Kosmická sépie). Ke stažení jsou Ubuntu Desktop a Server, Ubuntu Cloud Images, Ubuntu Netboot, Kubuntu, Lubuntu a Lubuntu Alternate, Ubuntu Budgie, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio a Xubuntu. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 3
18.10. 18:33 | Nová verze

Byl vydán PostgreSQL ve verzi 11.0. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
18.10. 17:33 | IT novinky

Nadace Raspberry Pi představila na svém blogu Raspberry Pi TV HAT, tj. rozšíření jednodeskového počítače Raspberry Pi umožňující příjem televizního vysílání DVB-T a DVB-T2. Cena rozšíření je 21,50 $.

Ladislav Hagara | Komentářů: 6
18.10. 17:07 | Nová verze

Vychází OpenBSD 6.4. Z řady novinek namátkou: podpora dalších architektur (arm64 např. dostal z Linuxu vypůjčený ovladač radeondrm), hypervizor vmm podporuje i qcow2 disky a šablony, jádro dokáže automaticky přepínat mezi dostupnými bezdrátovými sítěmi, sítě pracují o něco efektivněji, z bezpečnosti „přísaha byla doplněna odhalením“ (pledge(2) lze vhodně doplnit pomocí unveil(2)), SMT je ve výchozím stavu vypnutý, ale lze jej zapnout. Syntaxe nastaveni OpenSMTPD se změnila. S vydáním vychází také nová verze LibreSSL - 2.8.2.

Daniel Čižinský | Komentářů: 5
17.10. 23:15 | IT novinky

Firma Raptor Computing Systems, která stojí také za pracovní stanicí Talos II, představila levnější desku Blackbird s podporou jednoho 4-/8jádrového CPU POWER9 Sforza a formátem microATX; bližší specifikace jsou ve wiki výrobce.

Fluttershy, yay! | Komentářů: 28
17.10. 22:11 | Zajímavý projekt

Byla vydána verze 1.0 svobodné federalizované platformy pro sledování a sdílení videí, alternativy YouTube s podporou P2P, PeerTube (Wikipedie). Za vývojem PeerTube stojí nezisková organizace Framasoft snažící se mimo jiné nahradit svými svobodnými Frama službami služby společnosti Google (De-google-ify Internet).

Ladislav Hagara | Komentářů: 1
17.10. 19:44 | Zajímavý projekt

Společnost System76 prodávající počítače s Pop!_OS nebo Ubuntu plánuje prodej vlastního open source počítače s názvem Thelio. Informací je poskrovnu. Na Twitteru byla představena open source rozšířující deska (daughterboard), která by měla převzít funkce proprietárního softwaru na základní desce (motherboard).

Ladislav Hagara | Komentářů: 2
Přispíváte osobně k vývoji svobodného softwaru?
 (40%)
 (43%)
 (24%)
 (23%)
 (11%)
 (37%)
Celkem 253 hlasů
 Komentářů: 12, poslední 17.10. 21:18
Rozcestník

Vtipná konstrukce v shellu

28.1. 21:33 | Přečteno: 1790×

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. 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. 14:28 pc2005 | skóre: 36 | 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. 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. 14:32 pc2005 | skóre: 36 | 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. 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. 14:45 pc2005 | skóre: 36 | 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. 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. 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. 21:42 pc2005 | skóre: 36 | 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. 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.