Patchouli je open source implementace EMR grafického tabletu (polohovací zařízení). Projekt je hostován na GitLabu.
Český Nejvyšší soud potvrdil, že česká právní úprava plošného uchování dat o elektronické komunikaci porušuje právo Evropské unie. Pravomocným rozsudkem zamítl dovolání ministerstva průmyslu a obchodu. To se teď musí omluvit novináři Českého rozhlasu Janu Cibulkovi za zásah do práv na ochranu soukromí a osobních údajů. Ve sporu jde o povinnost provozovatelů sítí uchovávat údaje, ze kterých lze odvodit, kdo, s kým a odkud komunikoval.
Google bude vydávat zdrojové kódy Androidu pouze dvakrát ročně. Ve 2. a 4. čtvrtletí.
Bezpečnostní specialista Graham Helton z Low Orbit Security si všímá podezřelých anomálií v BGP, zaznamenaných krátce před vstupem ozbrojených sil USA na území Venezuely, které tam během bleskové speciální vojenské operace úspěšně zatkly venezuelského diktátora Madura za narkoterorismus. BGP (Border Gateway Protocol) je 'dynamický směrovací protokol, který umožňuje routerům automaticky reagovat na změny topologie počítačové sítě' a je v bezpečnostních kruzích znám jako 'notoricky nezabezpečený'.
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,58 %. 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,32 %. Procesor AMD používá 67,43 % hráčů na Linuxu.
V Las Vegas probíhá veletrh CES (Consumer Electronics Show, Wikipedie). Firmy představují své novinky. Například LEGO představilo systém LEGO SMART Play: chytré kostky SMART Brick, dlaždičky SMART Tagy a SMART minifigurky. Kostka SMART Brick dokáže rozpoznat přítomnost SMART Tagů a SMART minifigurek, které se nacházejí v její blízkosti. Ty kostku SMART Brick aktivují a určí, co má dělat.
Vládní CERT (GovCERT.CZ) upozorňuje (𝕏) na kritickou zranitelnost v jsPDF, CVE-2025-68428. Tato zranitelnost umožňuje neautentizovaným vzdáleným útočníkům číst libovolné soubory z lokálního souborového systému serveru při použití jsPDF v prostředí Node.js. Problém vzniká kvůli nedostatečné validaci vstupu u cest k souborům předávaných několika metodám jsPDF. Útočník může zneužít tuto chybu k exfiltraci citlivých
… více »V úterý 13. ledna 2025 se v pražské kanceláři SUSE v Karlíně uskuteční 5. Mobile Hackday, komunitní setkání zaměřené na Linux na mobilních zařízeních, kernelový vývoj a související infrastrukturu. Akci pořádá David Heidelberg.
… více »Už je 14 dní zbývá do začátku osmého ročníku komunitního setkání nejen českých a slovenských správců sítí CSNOG 2026. Registrace na akci je stále otevřená, ale termín uzávěrky se blíží. I proto organizátoři doporučují, aby se zájemci přihlásili brzy, nejlépe ještě tento týden.
… více »Rok 2026 sotva začal, ale už v prvním týdnu se nashromáždilo nezvykle mnoho zajímavostí, událostí a zpráv. Jedno je ale jisté - už ve středu se koná Virtuální Bastlírna - online setkání techniků, bastlířů a ajťáků, kam rozhodně doražte, ideálně s mikrofonem a kamerou a zapojte se do diskuze o zajímavých technických tématech.
Dějí se i ne zcela šťastné věci – zdražování a nedostupnost RAM a SSD, nedostatek waferů, 3€ clo na každou položku z Číny … více »/^11 / { print t($5*180/3.141592653589) "\n" t($6*180/3.141592653589); }
Současný příkaz:
/^$/ { flag=0; next; }
/D Format/ { flag=0; next; }
/F Format/ { flag=1; next; }
/^ 9 / { print t($5) "\n" t($6); }
/^10 / { print t($5) "\n" t($6); }
/^11 / { print t($5*180/3.141592653589) "\n" t($6*180/3.141592653589); }
/^15 / { print t($5*100) "\n" t($6*100); }
/^16 / { print t($5) "\n" t($6); }
/^20 / { print t($5*10) "\n" t($6*10); }
/^23 / { print t($5) "\n" t($6); }
/^24 / { print t($5) "\n" t($6); }
function t(n, s) {
s=index(n,".");
return (s ? substr(n,1,s+6) : n);
}
Jak napsat více vstupních souborů?
awk -f code dcout1.active dcout2.active dcout3.active..... Jde to lépe?
Proč mám špatně vyhraněnou tu oblast? Vypisují se tam i hodnoty z následující tabulky.
Děkuji moc
/^$/ { flag=0; next; }
/D Format/ { flag=0; next; }
/F Format/ { flag=1; next; }
/^26 / { next; }
flag && /^ *[0-9]/ { print t($5) "\n" t($6); }
function t(n, s) {
s=index(n,".");
return (s ? substr(n,1,s+6) : n);
}
a to
43.685030
0.106608
0.080182
0.000675
2.734748
0.011468
0.219356
0.001769
83.864830
0.115873
2.250249
0.004792
3.936308
0.005290
7.491860
0.009210
ale potřeboval bych tam zahrnout to počítání.
# promenna FS urcuje oddelovac sloupcu, v mem pripade je to ;
# promenna OFMT urcuje pocet desetinnych mist a mezery mezi cisly
echo " Aritmeticky prumer dat od $USERDATE3 $USERTIME1 do $USERDATE4 $USERTIME2" >/datalog_bin/prumer/ctiprumer.$$
awk --use-lc-numeric 'BEGIN { FS = " "; print " Merici ustredna Difuse (OS GNU/Linux with Tux Inside)" }
{ s=s+$2; s1=s1+$3; s2=s2+$4; s3=s3+$5; s4=s4+$6; s5=s5+$7; s6=s6+$8; s7=s7+$9;\
s8=s8+$10; s9=s9+$11; s10=s10+$12; s11=s11+$13; s12=s12+$14; s13=s13+$15; s14=s14+$16; s15=s15+$17 }
END { OFMT= "%3.2f ";
print ""
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_0", s/NR+0.00001, "%RH ", "Prumerna_vlhkost_Skrin_1")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_1", s1/NR+0.00001, "°C ", "Prumerna_teplota_Skrin_1")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_2", s2/NR+0.00001, " ", " ")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_3", s3/NR+0.00001, " ", " ", " ")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_4", s4/NR+0.00001, "%RH ", "Prumerna_vlhkost_Skrin_2")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_5", s5/NR+0.00001, "\260C ", "Prumerna_teplota_Skrin_2")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_6", s6/NR+0.00001, " ", " ")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_7", s7/NR+0.00001, " ", " ")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_8", s8/NR+0.00001, "%RH ", "Prumerna_vlhkost_Skrin_3")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_9", s9/NR+0.00001, "\260C ", "Prumerna_teplota_Skrin_3")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_10", s10/NR+0.00001, " ", " ")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_11", s11/NR+0.00001, " ", " ")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_12", s12/NR+0.00001, "%RH ", "Prumerna_vlhkost_okoli")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_13", s13/NR+0.00001, "\260C ", "Prumerna_teplota_okoli")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_14", s14/NR+0.00001, "kPa ", "Prumerny_tlak_vzduchu")
printf("%-15s %6.2f %4s %-40s\n"," CHANNEL_15", s15/NR+0.00001, " ", " ")}' \
< /datalog_bin/prumer/doprumeru.dat.$$ >>/datalog_bin/prumer/ctiprumer.$$
Výstup je takový:
CHANNEL_0 59,91 %RH Prumerna_vlhkost_Skrin_1 CHANNEL_1 22,71 °C Prumerna_teplota_Skrin_1 CHANNEL_2 0,00 CHANNEL_3 0,00 CHANNEL_4 52,60 %RH Prumerna_vlhkost_Skrin_2 CHANNEL_5 23,08 `C Prumerna_teplota_Skrin_2 CHANNEL_6 0,00 CHANNEL_7 0,00 CHANNEL_8 73,46 %RH Prumerna_vlhkost_Skrin_3 CHANNEL_9 22,68 `C Prumerna_teplota_Skrin_3 CHANNEL_10 0,00 CHANNEL_11 0,00 CHANNEL_12 42,59 %RH Prumerna_vlhkost_okoli CHANNEL_13 21,30 `C Prumerna_teplota_okoli CHANNEL_14 99,10 kPa Prumerny_tlak_vzduchu CHANNEL_15 0,00Více vstupních souborů:
hlavicka="/datalog_bin/tlak-vzduchu-html/hlavicka"
last200csv="/datalog_bin/tlak-vzduchu-html/200.csv"
paticka0="/datalog_bin/tlak-vzduchu-html/paticka0"
paticka="/datalog_bin/tlak-vzduchu-html/paticka"
{ #Start podminky
if (hlavicka == 1) #Pokud je promenna hlavicka=1, tiskni soubor1 (hlavicka)
print
if (hlavicka == 2) #Pokud je promenna hlavicka=2, uprav soubor2 (200.csv)
{ #Start programu - uprav soubor2
split($18, datum, "[\t -]")
$18 = datum [3] "." datum [2] "." datum [1] " " datum [4]
#Vypocet relativniho tlaku vzduchu
AbsPress = $16 #Absolutni tlak v kPa
ElevationDifuse = "217" #Nadmorska vyska v m
GravConst = "9,80665" #Isaac Newton
GasConst = "287,04" #Merna plynova konstanta R = 287,04 J/K
AverTempDifuse = $15 + (ElevationDifuse * "0,0025")
RelPressDifuse = AbsPress/exp(-ElevationDifuse * GravConst/(GasConst * ( "273,15" + AverTempDifuse ))) * 10* "1,0012"
format1 = " %s ""\n"
format2 = " %.2f °C ""\n"
format3 = " %.3f kPa ""\n"
format4 = " %.2f HPa ""\n"
if ($0 !~ /[a-z]/) #V datech je radek s textem, ktery musim odfiltrovat
{
printf "" "\n"
printf (format1 format2 format3 format4, $18, $15, $16, RelPressDifuse "\n")
print " " "\n"
}
else
{
next
}
} #Stop programu
if (hlavicka == 3) #Pokud je promenna hlavicka=7, print tabletty1
{
print
}
{ if (hlavicka == 4) #Pokud je promenna hlavicka=3, print paticka0
print
}
{ if (hlavicka == 5) #Pokud je promenna hlavicka=3, print aktualnihodnoty
print
}
{ if (hlavicka == 6) #Pokud je promenna hlavicka=3, print paticka
print
}
}' hlavicka=1 "$hlavicka" hlavicka=2 "$last200csv" hlavicka=3 "$tabletty1" hlavicka=4 "$paticka0" hlavicka=5 "$aktualnihodnoty" hlavicka=6 "$paticka" |tee \
"$destination1" "$destination2" >/dev/null
done
Tiskni
Sdílej: