Mastodon (Wikipedie) - sociální síť, která není na prodej - byl vydán ve verzi 4.5. Přehled novinek s náhledy v oznámení na blogu.
Německo zvažuje, že zaplatí místním telekomunikačním operátorům včetně Deutsche Telekom, aby nahradili zařízení od čínské firmy Huawei. Náklady na výměnu by mohly přesáhnout dvě miliardy eur (bezmála 49 miliard Kč). Jeden scénář počítá s tím, že vláda na tento záměr použije prostředky určené na obranu či infrastrukturu.
Po dvaceti letech skončil leader japonské SUMO (SUpport.MOzilla.org) komunity Marsf. Důvodem bylo nasazení sumobota, který nedodržuje nastavené postupy a hrubě zasahuje do překladů i archivů. Marsf zároveň zakázal použití svých příspěvků a dat k učení sumobota a AI a požádal o vyřazení svých dat ze všech učebních dat.
Úřad pro ochranu hospodářské soutěže zahajuje sektorové šetření v oblasti mobilních telekomunikačních služeb poskytovaných domácnostem v České republice. Z poznatků získaných na základě prvotní analýzy provedené ve spolupráci s Českým telekomunikačním úřadem (ČTÚ) ÚOHS zjistil, že vzájemné vztahy mezi operátory je zapotřebí detailněji prověřit kvůli možné nefunkčnosti některých aspektů konkurence na trzích, na nichž roste tržní podíl klíčových hráčů a naopak klesá význam nezávislých virtuálních operátorů.
Různé audity bezpečnostních systémů pařížského muzea Louvre odhalily závažné problémy v oblasti kybernetické bezpečnosti a tyto problémy přetrvávaly déle než deset let. Jeden z těchto auditů, který v roce 2014 provedla francouzská národní agentura pro kybernetickou bezpečnost, například ukázal, že heslo do kamerového systému muzea bylo „Louvre“. 😀
Z upstreamu GNOME Mutter byl zcela odstraněn backend X11. GNOME 50 tedy poběží už pouze nad Waylandem. Aplikace pro X11 budou využívat XWayland.
Byl publikován plán na odstranění XSLT z webových prohlížečů Chrome a Chromium. S odstraněním XSLT souhlasí také vývojáři Firefoxu a WebKit. Důvodem jsou bezpečnostní rizika a klesající využití v moderním webovém vývoji.
Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.3.0. Přehled novinek v poznámkách k vydání.
Organizace Open Container Initiative (OCI) (Wikipedie), projekt nadace Linux Foundation, vydala Runtime Specification 1.3 (pdf), tj. novou verzi specifikace kontejnerového běhového prostředí. Hlavní novinkou je podpora FreeBSD.
Nový open source router Turris Omnia NG je v prodeji. Aktuálně na Allegro, Alternetivo, Discomp, i4wifi a WiFiShop.
#!/bin/bash
NUM=1
# 1) ztratí hodnotu NUM
# head -n 6 /proc/mounts | while read
# 2) zde hodnotu NUM udrží...
while [ $NUM -lt 5 ]
do
echo "NUM: "$NUM
NUM=$((NUM+1))
done
echo -- $NUM
Výstup pro první a druhý případ vypadá takto:
alnagon ~ % alnagon ~ % ./scripts/01_pk_test_script.sh NUM: 1 NUM: 2 NUM: 3 NUM: 4 NUM: 5 -- 1 alnagon ~ % alnagon ~ % ./scripts/01_pk_test_script.sh NUM: 1 NUM: 2 NUM: 3 NUM: 4 NUM: 5 -- 6 alnagon ~ % alnagon ~ %Lze nějak docílit, aby hodnotu NUM zachoval i ve formě "while read" ?
Řešení dotazu:
head -n 6 /proc/mounts | while readTady neco chybi ne ?
prikaz | while read ...
sa spusta subshell a premenna NUM je inicializovana mimo tohto subshellu, takze na nu cokolvek co sa deje v subshelli ( v slucke s while ), nema ziadny dosledok. Nasledne nemusi fungovat v kazdom shelli, ale bash minimalne to podporuje. Je to sposob, ako zabranit, aby sa vytvoril subshell.
#!/bin/bash
NUM=1
while read line
do
echo "NUM: "$NUM
echo "$line"
NUM=$((NUM+1))
done< <(head -n6 /proc/mounts)
echo -- $NUM
Rovnako sa chovaju premenne aj vo funkciach, ak sa neexportuju.
Pravda s tym exportom, musim priznat. :)
Taktiez je mozne pouzit cisto declare namiesto local, aj ked logickejsie a osobne tiez pouzivam local, ak chcem lokalne premenne. To len na doplnenie, ze je to ekvivalent, nie na opravu tvojho tvrdenia. To je spravne. ;)
#!/bin/bash
num=0
funkcia1(){
declare num
num=$RANDOM
echo num z funkcie1: $num
}
funkcia2(){
declare num
num=$RANDOM
echo num z funkcie2: $num
}
echo num: $num
funkcia1
echo num: $num
funkcia2
echo num: $num
Pajpa (teda |) spusta subshell, rovnako ako zatvorky. A subshell nemoze ovplyvnit to, co sa deje v "hlavnom" shelli.
Riesenim je pouzivat tu hodnotu len v subshelli, teda napr.
prikaz | while read VARIABLE; do echo "Tu mi premenna $VARIABLE funguje"; done
Tiskni
Sdílej: