Konference Prague PostgreSQL Developer Day 2026 (P2D2) se koná 27. a 28. ledna 2026. Konference je zaměřena na témata zajímavá pro uživatele a vývojáře. Příjem přednášek a workshopů je otevřen do 14. listopadu. Vítáme témata související s PostgreSQL či s databázemi obecně, a mohou být v češtině či angličtině.
Byl vydán Devuan 6 Excalibur. Přehled novinek v poznámkách k vydání. Kódové jméno Excalibur bylo vybráno podle planetky 9499 Excalibur. Devuan (Wikipedie) je fork Debianu bez systemd. Devuan 6 Excalibur vychází z Debianu 13 Trixie. Devuan 7 ponese kódové jméno Freia.
Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu poprvé překročil 3 %, aktuálně 3,05 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 27,18 %. Procesor AMD používá 67,10 % hráčů na Linuxu.
Joel Severin v diskusním listu LKML představil svůj projekt linuxového jádra ve WebAssembly (Wasm). Linux tak "nativně" běží ve webovém prohlížeči. Potřebné skripty pro převod jsou k dispozici na GitHubu.
Byla vydána nová verze 25.10.31 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.
O víkendu probíhá konference OpenAlt 2025 (Stream). Na programu je spousta zajímavých přednášek. Pokud jste v Brně, stavte se. Vstup zdarma.
Josef Průša představil novou velkoformátovou uzavřenou CoreXY 3D tiskárnu Prusa CORE One L a nový open source standard chytrých cívek OpenPrintTag i s novou přepracovanou špulkou.
Na GOG.com běží Autumn Sale. Při té příležitosti je zdarma hororová počítačová hra STASIS (ProtonDB: Platinum).
Ubuntu 25.10 má nově balíčky sestavené také pro úroveň mikroarchitektury x86-64-v3 (amd64v3).
Byla vydána verze 1.91.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
myArray=("cat" "dog" "mouse" "frog")
A=("a" "b" "c")
A+=("d")
ls *.mp3 | sort -R | while read i; do
A+=( "$i" );
echo $i
done
for i in ${A[@]}; do
echo "--- $i"
done
Vypise to len a b c d, nic z toho while cyklu.
Řešení dotazu:
for i in $(ls *.mp3 | sort -R); do
A+=("$i")
done
myArray=("cat" "dog" "mouse" "frog")
A=("a" "b" "c")
A+=("d")
while read i; do
A+=( "$i" );
echo $i
done < <(ls *.mp3 | sort -R)
for i in "${A[@]}"; do
echo "--- $i"
done
#!/bin/bash
clear
A=()
while read i; do
A+=( "$i" );
done < <(ls *.mp3 | sort -R)
for i in "${A[@]}"; do
echo "$i"
mplayer -really-quiet "$i" 2>/dev/null
done
while není „podprogram“. (Existuje taky „nadprogram“?) Problém není while, nýbrž dýmka. Bez dýmky se dá z while přistupovat k proměnným.
Mimochodem: Nikdy neparsuj výstup z ls.
mp3s=()
while IFS= read -r mp3; do
mp3s+=("$mp3")
done < <(for mp3 in *.mp3; do
printf '%s\n' "$mp3"
done | shuf)
for i in "${!mp3s[@]}"; do
printf '%u --- %s\n' "$i" "${mp3s[i]}"
done
./a.sh: line 4: syntax error near unexpected token `('
./a.sh: line 4: `done << (for mp3 in *.mp3; do'
GNU bash, version 5.1.16(1)
Kde přesně jsem napsal „<< (“? Nikde to v mém kódu nevidím.
Doporučuji Copy&Paste; pomáhá to.
Pokud nemáš k dipozici lepší formát, tak bych ty prvky oddělil nulovým bajtem:
while read -d '' i; do A+=("$i"); done < <(find -maxdepth 1 -type f -name '*.mp3' -print0 | sort -zR)
Protože v názvu souboru může být víceméně libovolná změť bajtů kromě nulového bajtu (mj. aby to mohl být céčkovský řetězec) a lomítka (protože to je oddělovač v cestě k souboru). Tzn. kromě mezer, uvozovek a apostrofů tam můžou být i znaky konce řádku. Což dokáže zavařit např. i bash-completion:
$ touch "ko kos" $ ls -1 'ko'$'\n''kos' $ rm ko<TAB> ko kos
Tiskni
Sdílej: