Firma X zaslala předžalobní výzvu vývojáři projektu Nitter (Wikipedia), open-source alternativního frontendu k sociální síti X (ex-Twitter), a provozovatelům instancí jako XCancel, které umožňovaly číst příspěvky bez přihlášení, reklam a javascriptu. Údajně se dopouštějí „sběru dat“. Zdrojový kód Nitteru vývojář archivoval. Vývoj již dříve přerušil v roce 2024 po tehdejším omezení API X. X je dceřiná společnost SpaceXAI Elona Muska, provozující mj. kontroverzního chatbota Grok.
Bylo vydáno Ubuntu 26.04.1 LTS, tj. první opravné vydání Ubuntu 26.04 LTS s kódovým názvem Resolute Raccoon. Přehled novinek a oprav na Discourse.
Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) vydal Zprávu o stavu kybernetické bezpečnosti ČR za rok 2025 (pdf). Incidentů ubylo, sofistikovanost útočníků roste.
Open source softwarový stack AMD ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán v nové major verzi 10.0. S ROCm.AI. Přehled novinek v aktualizované dokumentaci.
Finanční skupina Partners se stala minulou neděli obětí kybernetického útoku, při kterém se útočníci dostali k některým osobním údajům klientů. Společnost o tom informovala ve čtvrtek. Ujišťuje, že peníze klientů nejsou v ohrožení. „Kybernetický útok zasáhl část IT infrastruktury naší společnosti. Ihned po zjištění útoku jsme s pomocí externích bezpečnostních odborníků začali intenzivně pracovat na minimalizaci škod. Útočníci se
… více »Americká technologická společnost Meta Platforms se dohodla, že zaplatí až zhruba 18 miliard dolarů (asi 373 miliard Kč) za mimosoudní urovnání sporu o závislosti dětí na sociálních sítích a provede významné změny pro jejich používání mladistvými. Téměř tři desítky států USA firmu v roce 2023 obvinily z toho, že sítě Facebook a Instagram vědomě navrhla tak, aby u dětí vyvolávaly závislost, a zatajovala tyto dopady před veřejností. Firma se
… více »Byl publikován aktuální přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Blíží se vydání podporující čipy M3. Vývojáře lze podpořit na GitHub Sponsors a Open Collective.
Kancelářský balík LibreOffice byl vydán ve verzi 26.8. Mimo jiné vylepšuje typografii a kompatibilitu s formáty MS Office, více v poznámkách k vydání.
Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 26.8. Přehled novinek v poznámkách k vydání.
Byla vydána nová verze 23.1.0, tj. první stabilní verze z nové řady 23.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools, Libc++, Polly a Flang.
up() { tr a-z A-Z; }
check() { for F in *.[${F:0:1}$(echo ${F:0:1} | \
up)][${F:1:1}$(echo ${F:1:1} | \
up)][${F:2:2}$(echo ${F:2:2} | up)]; do [ ! -z "$F" ] && \
break; done; }a spustím
check oggjenže to vrací pořád nulu ať už tam ogg je, nebo ne. Asi by to šlo jen poladit a nebyl by problém, jenže mi to přijde trošku extrémismus na takovou trivialitu. Samozřejmě mě napadlo třeba
ls *.[oO][gG][gG], ale co kdyby jich tam bylo hafo, že jo...
a nieco take ze
for i in *; do
if [ -n "`echo $i | grep -w -i ".ogg$"`" ]; then
pocet=$[ $pocet + 1 ]
fi;
done;
by nefungovalo?
[ivok@zero ~]$ ls *.avi 2>/dev/null >/dev/null [ivok@zero ~]$ echo $? 0 [ivok@zero ~]$ ls *.ogg 2>/dev/null >/dev/null [ivok@zero ~]$ echo $? 1
*.ogg se expanduje na neprázdný řetězec *.ogg v případě, že soubory neexistují. Při přiřazení do proměné se nullglob neuplatní takže se to musí prohnat přes echo. No a v neposlední řadě je nocaseglob dost užitečný přepínač a uděláme to v subprocesu, aby jsme si nezměnili aktuální nastavení. Třeba nějak takhle:
check() {
local a="$(shopt -s nocaseglob nullglob; echo *".$1")";
test -n "$a";
}
echo $a tak se provede globbing a tak je při ladění potřeba si to vypsat například pomocí echo "x${a}x" Zkrátka samé radosti
To byl ale vypečený úkol.
*.[oO][gG][gG]. Na co je tam asi to shopt -s nocaseglob? To si to nemlžete zkusit než něco plácnete?
$ check() { test -n "$(shopt -s nocaseglob nullglob; echo*".$1")"; }
$ touch a.oGg
$ check ogg && echo OK || echo BAD
OK
$ rm a.oGg
$ check ogg && echo OK || echo BAD
BAD
find ./ -type f -maxdepth 1 -name "*.[oO][gG][gG]"
find: warning: you have specified the -maxdepth option after a non-option argument -type, but options are not positional (-maxdepth affects tests specified before it as well as those specified after it). Please specify options before other arguments.
Tiskni
Sdílej: