Byly zveřejněny informace o kritické zranitelnosti CVE-2025-55182 s CVSS 10.0 v React Server Components. Zranitelnost je opravena v Reactu 19.0.1, 19.1.2 a 19.2.1.
Bylo rozhodnuto, že nejnovější Linux 6.18 je jádrem s prodlouženou upstream podporou (LTS). Ta je aktuálně plánována do prosince 2027. LTS jader je aktuálně šest: 5.10, 5.15, 6.1, 6.6, 6.12 a 6.18.
Byla vydána nová stabilní verze 3.23.0, tj. první z nové řady 3.23, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.
Byla vydána verze 6.0 webového aplikačního frameworku napsaného v Pythonu Django (Wikipedie). Přehled novinek v poznámkách k vydání.
Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).
Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.
Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. 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 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.
Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).
Samsung představil svůj nejnovější chytrý telefon Galaxy Z TriFold (YouTube). Skládačka se nerozkládá jednou, ale hned dvakrát, a nabízí displej s úhlopříčkou 10 palců. V České republice nebude tento model dostupný.
DMN=("aaa|dasdsaa|ddasddd"
"bbb|dasdsaa|ddasddd"
"ccc|dasdsaa|ddasddd")
for
echo ??? // výsledek aaa
echo ??? // výsledek dasdsaa
echo ??? // výsledek ddasddd
done
Pokud by to nebylo v poli, ale v souboru nebo jako výstup nějakého příkazu, bylo by to o dost jednodušší. Skutečně tam musí figurovat to pole?Tak nemusí tam figurovat pole, ale pokud to bude v souboru, tak jsem myslel, že to bude ještě složitější, navíc si to ani nedokážu moc představit jak to mysliš.
cut -d\| -f 1 <data.txtNebo druhý sloupeček výstupu z jiného programu:
program | cut -d\| -f 2Formátovaný výstup:
program | awk -F'|' '{printf "A: %s\nB: %s\nC: %s\n\n",$1,$2,$3}'
A: aaa B: dasdsaa C: ddasddd A: bbb B: dasdsaa C: ddasddd A: ccc B: dasdsaa C: ddasdddapod. Možností je mnoho, ale ve chvíli, kdy to někdo nacpe do pole, je jich o něco méně a jsou s tím občas problémy.
Navíc bych potřeboval s každou hodnotou nadále pracovat... A co tohle? Tohle by fungovat mělo, ne? Ale mám tam nějakou chybu na kterou nemůžu přijít.
DMN=("aaa|dasdsaa|ddasddd"
"bbb|dasdsaa|ddasddd"
"ccc|dasdsaa|ddasddd")
i=0
for i in ${!DMN[*]}
do
IFS="|"
ARRAY=${DMN[$i]}
echo ${ARRAY[0]}
echo ${ARRAY[1]}
echo ${ARRAY[2]}
done
ARRAY=${DMN[$i]}
má být
ARRAY=(${DMN[$i]})
Tady to je dvojím způsobem (druhý je spíš na zamyšlení „co to dělá“):
#!/bin/bash
DMN=("aaa|dasdsaa|ddasddd"
"bbb|dasdsaa|ddasddd"
"ccc|dasdsaa|ddasddd")
for (( i=0; i < ${#DMN[@]}; i++ )); do
echo "${DMN[$i]}"
done
OLDIFS=$IFS
IFS='|'
for (( i=0; i < ${#DMN[@]}; i++ )); do
var=(${DMN[$i]})
for (( j=0; j < ${#var[@]}; j++ )); do
echo "${var[$j]}"
done
done
IFS=$OLDIFS
for (( i=0; i < ${#DMN[@]}; i++ )); do
var=${DMN[$i]}
while [ 1 ]; do
varout=${var%%|*}
var=${var#*|}
echo "${varout}"
if [[ "$var" != *\|* ]]; then
echo "${var}"
break
fi
done
done
#!/bin/bash
a=(foo bar)
b=(bar foo)
c=(a b)
eval echo \${${c[0]}[0]} \${${c[1]}[0]}
eval je sice v mnoha jazycích, ale vždy je u ní uvedeno, že se jedná o funkci pomalou a potenciálně nebezpečnou. Je lépe se jejímu použití vyhnout a zpravidla to jde. Jen je nutné se na problém podívat z jiného úhlu.
Tiskni
Sdílej: