Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).
ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.
LF AI & Data Foundation patřící pod Linux Foundation spustila Open Platform for Enterprise AI (OPEA).
Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.
Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.
ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.
Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.
#HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.
Společnost Volla Systeme stojící za telefony Volla spustila na Kickstarteru kampaň na podporu tabletu Volla Tablet s Volla OS nebo Ubuntu Touch.
Společnost Boston Dynamics oznámila, že humanoidní hydraulický robot HD Atlas šel do důchodu (YouTube). Nastupuje nová vylepšená elektrická varianta (YouTube).
#!/bin/bash echo -e "1\n2\n3" | while read line do echo "while: $line" a=ahoj done echo $aPosledni echo nevypise hodnotu promenne a, ktera byla inicializovana v tele cyklu while. Muzete mi prosim poradit proc a jak tomu zabranit? Dekuji.
#!/bin/bash a=aaa echo -e "1\n2\n3" | while read line do echo "while: $line" a=ahoj done echo $aVypise to "aaa" ale ja chci vypsat "ahoj"
#!/bin/bash a=aaa echo -e "1\n2\n3" | while read line do echo "while: $line" $a=ahoj done echo $a
Pokud chces nastavovat tu globalni tak tam prihod predtoa=ahoj
znak:$
Než začnete podobné věci někomu radit, ověřte si, prosím, jestli mají šanci fungovat.
Jak bylo receno, problem je v tom ze roura |
spusti subshell, ktery ma vlastni promennou. Promenne v bashi jsou promenne prostredi a lze je predavat pouze potomkum soucasneho procesu a ne predkum. V momente kdy while
skonci, skonci i subshell a promenna taky.
Predat promennou o uroven vys lze ale nekolika jinymi zpusoby. Kazda ma sve pro a proti.
echo -e "1\n2\n3" | while read line do echo "while: $line" echo ahoj >docasnysoubor done a=`cat docasnysoubor` rm -f docasnysoubor
`
resp. $()
.
a=$(echo -e "1\n2\n3" | while read line do echo ahoj done)
echo -e "1\n2\n3" | ( while read line do echo "while: $line" a=ahoj done echo a dalsiveci )
4. Chcete-li v tom cyklu zpracovávat pevný text, je zbytečné na to používat rouru, jednodušší je "here document":
#!/bin/bash while read line; do echo "while: $line" a=ahoj done <<EOF 1 2 3 EOF
5. Chcete-li opravdu zpracovávat výstup programu, dá se to obejít pomocí "process substitution":
#!/bin/bash exec 3< <(echo -e "1\n2\n3") while read line; do echo "while: $line" a=ahoj done <&3 echo "a=$a"
Tiskni Sdílej: