Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.
Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.
Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).
Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.
Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.
Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.
Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.
Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.
Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.
start() { for((;;)) do echo "$(date +%F) @ $(date +%T) :: $(cpuload | awk {'print$2'})%" >> /home/david/stats/now done } stop() { mv /home/david/stats/now /home/david/stats/$(date +%F)-at-$(date +%T).log } restart() { mv /home/david/stats/now /home/david/stats/$(date +%F)-at-$(date +%T).log for((;;)) do echo "$(date +%F) @ $(date +%T) :: $(cpuload | awk {'print$2'})%" >> /home/david/stats/now done }No a díky tomu jsem se dostal k tomu, že neumím ukončit for cyklus. Na začátku
stop()
a restart()
mi to chybí. Nevíte prosím jak na to?
Především by bylo vhodně, dělat restart
voláním procedur stop
a start
, nikoliv copy-paste jejich obsah.
Potom, když je to systémový skript, tak je lepší výsledek ukládat do /var/neco, než do /home
Co takhle nekonečný for
nahradit smyčkou while
a jako podmínku tam dát test existence nejakého souboru? Pokud soubor přestane existovat (tj. ve stop
se smaže), tak se jednoduše ukončí. To by nešlo?
while
smyčku nepsal...
man testa ještě:
[
je hardlink na test
Tak mě napadá, že tam nikde není sleep
. Nebo je už v tom cpuload
?
cpuload
každých 5 sekund zapíše zatížení procesoru do statistiky. Zdrojový kód cpuload
je zde (díky, Doli), /etc/init.d/cpustats
vypadá takto:
start() { cpuloadd & } stop() { if [ -f /home/david/stats/now ] then mv /home/david/stats/now /home/david/stats/$(date +%F)-at-$(date +%T).log killall cpuloadd cpuload else killall cpuloadd cpuload fi } restart() { svc_stop svc_start }a
cpuloadd
obsahuje:
#! /bin/bash doIt() { for((;;)) do echo "$(date +%F) @ $(date +%T) :: $(cpuload | awk {'print$2'})%" >> /home/david/stats/now done } if [ -f /home/david/stats/now ] then mv /home/david/stats/now /home/david/stats/$(date +%F)-at-$(date +%T).log doIt else doIt fi
if [cond] ... doIt else doIt fi
Stejný příkaz v obou větvích ifu?
To si asi nerozumíme. Mě je jedno, co ten příkaz doIt dělá a v jakém je skriptu. Zajímá mě, proč je v obou větvích ifu stejný příkaz (tedy vykoná se, ať podmínka ifu dopadne jakkoliv)
Místo:
if [cond] ... doIt else doIt fi
Lze přece jednoduše psát:
if [cond] ... fi doIt
/var/stats
a když ne, aby jí vytvořil. V manuálu test
u kontrole zda soubor NEexistuje nic není (když neexistuje aby vrátil exit 0 a když jo, tak 1). Musím tedy napsat if
s nějakým zbytečným echem, nebo to test
umí a postačí while
?
ls /var/stats &> /dev/null while [ $? != 0 ] do mkdir -p /var/stats done
if [ ! -f "$FILE" ]; then echo "$FILE not found" fi
Tiskni Sdílej: