Někteří zákazníci O2 mohou aktuálně zaznamenat zhoršenou dostupnost internetových služeb. Na odstranění potíží se pracuje [Facebook].
PyPy (Wikipedie), tj. implementace Pythonu v RPythonu, alternativa CPythonu v C, byla vydána v nové major verzi 8.0.0. Podporuje Python 2.7, 3.11 a 3.12.
V jádře Linux byly nalezeny a v upstremu ve verzích 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109, 6.18.50 a 7.2.4 již opraveny 4 kritické zranitelnosti umožňující eskalaci práv: DirtyAH6 (CVE-2026-80844), TUNderflow (CVE-2026-81000), PPPoEject (CVE-2026-68121) a DiagSpill (CVE-2026-74469).
Německá policie a celníci zneužívají ke čtení zpráv komunikačních aplikacích WhatsApp, Signal, Telegram nebo Threema velice jednoduchý trik, který nevyžaduje prolomení šifrování, spear phishing, odposlech SMS či jinou technicky náročnou metodu. Příslušníkům státního aparátu pouze stačí získat krátký přístup k odemčenému telefonu a prostřednictvím QR kódu propojit účet s oficiální desktopovou nebo webovou aplikací v policejním
… více »Počítačová hra Factorio (Wikipedie) nově běží nativně na ARM64 Linuxu a headsetu Steam Frame.
Fugleramme, v překladu 'ptačí rámeček', je open-source projekt postavený na Raspberry Pi, který pomocí lokální umělé inteligence BirdNET-Go rozpoznává ptačí druhy podle jejich zpěvu a na displeji následně zobrazuje koláž tvořenou odpovídajícími ilustracemi. Databáze obsahuje přes 800 ručně vybraných historických přírodovědných ilustrací více než 400 druhů ptáků.
… více »Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 18.0. Přidáno bylo 13 007 nových znaků. Celkově jich je 172 808. Přibylo 9 nových Emoji.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 169 (pdf).
Byla vydána nová verze 6.4 programovacího jazyka Swift (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.
28135: open("/etc/lib"map.conf3", O_RDONLY, (unfinished ...)
28131: open("/etc/lib"map.conf12", O_RDONLY, (unfinished ...)
28131: (... open resumed)) = 0
28135: (... open resumed)) = -1 ENOENT (No such file or directory)
A potřeboval bych řádky se stejným počátečním číslem spojit do jednoho, aby výstup vypadal takto:
28135: open("/etc/lib"map.conf3", O_RDONLY, (unfinished ...)28135: (... open resumed)) = -1 ENOENT (No such file or directory)
28131: open("/etc/lib"map.conf12", O_RDONLY, (unfinished ...)28131: (... open resumed)) = 0
Tuším způsob, jak to třeba v awk udělat (začít u prvního řádku a porovnávat $1 s ostatními, když se najde shoda, vytisknout), ale vůbec mi nenapadá, jak to nakódit (s awk teprve začínám) a navíc mi tenhle způsob přijde neefektivní a náročný na čas.
my %line_pairs;
while (my $line = <>) {
chomp $line;
my @fields = split ':', $line;
my $num = shift @fields;
$line_pairs{$num} .= join ':', @fields;
}
for my $key (sort keys %line_pairs) {
print $line_pairs{$key}, "\n";
}
Možná trošku špatně, psáno z hlavy, netestováno.
{
i = $1
gsub(/:/, "", i)
lines[i] = lines[i] $0 " "
}
END {
for (i in lines) {
print lines[i]
}
}
awk '{if($1 in a){print a[$1]""$0;delete a[$1];}a[$1]=$0}' vstup
{
lines[$1] = lines[$1] $0 " "
}
END {
for (i in lines) {
print lines[i]
}
}
Předtím jsem totiž zapomněl, že pole v AWK mohou jako klíče používat libovolné řetězce.
jak se vlastně s awk a perlem pracuje.Chcete si to ozkoušet a pak si vybrat. Mně se třeba pracuje lépe s perlem (je univerzálnějším nástrojem než awk, ale uznávám, že může ze awk může vypadat přehledněji). Samozřejmě v perlu by to šlo taky napsat zkráceně
perl -ane 'chomp ;$line{$F[0]} .= $_; END{print $_,"\n" foreach values(%line)}'
sort subor | awk 'NR == 1 {last_id=$1;last=$0}
NR > 1 {if ($1 == last_id) {last = last$0} else {print last; last=$0; last_id=$1}}
END {print last}'
Ak je subor vysledkom prikazu grep, tak uz asi utriedeny je
unfinished ... a open resumed vyskytuje ?
sort subor | awk 'NR == 1 {last_id=$1;last=$0} NR > 1 {if (($1 == last_id) && ($0 ~ "unfinished|open resumed")) {last = last$0} else {print last; last=$0; last_id=$1}} END {print last}'
3733 execve("/bin/ls", ["ls", "/etc/anacrontab", "/etc/blkid.tab", "/etc/crontab", "/etc/crypttab", "/etc/fstab", "/etc/mtab"], [/* 38 vars */] < unfinished ...>
3733 <... execve resumed> ) = 0
3735 execve("/bin/sed", ["sed", "-n", "1p"], [/* 38 vars */] < unfinished ...>
3735 <... execve resumed> ) = 0
mohol by sem niekto napisat riesenie v awk aby mi to spojilo riadky ktore si odpovedaju tymi zaciatocnymi cislami?dakujem
Tiskni
Sdílej: