Dibuja je jednoduchý kreslící program inspirovaný programy Paintbrush pro macOS a Malování pro Windows. Vydána byla verze 0.26.0.
Byla vydána nová verze 9.13 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Byla vydána nová stabilní verze 3.22.0, tj. první z nové řady 3.22, 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í.
FEL ČVUT vyvinula robotickou stavebnici pro mladé programátory. Stavebnice Brian byla navržená speciálně pro potřeby populární Robosoutěže. Jde ale také o samostatný produkt, který si může koupit každý fanoušek robotiky a programování od 10 let, ideální je i pro střední školy jako výuková pomůcka. Jádro stavebnice tvoří programovatelná řídicí jednotka, kterou vyvinul tým z FEL ČVUT ve spolupráci s průmyslovými partnery. Stavebnici
… více »Ubuntu bude pro testování nových verzí vydávat měsíční snapshoty. Dnes vyšel 1. snapshot Ubuntu 25.10 (Questing Quokka).
Společnost Netgate oznámila vydání nové verze 2.8.0 open source firewallové, routovací a VPN platformy pfSense (Wikipedie) postavené na FreeBSD. Přehled novinek v poznámkách k vydání.
Byla vydána nová verze 6.16 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Tor Browser byl povýšen na verzi 14.5.3. Linux na verzi 6.1.140. Další změny v příslušném seznamu.
Člověk odsouzený za obchod s drogami daroval letos ministerstvu spravedlnosti 468 kusů kryptoměny bitcoin, které pak resort v aukcích prodal za skoro miliardu korun. Darováním se zabývá policejní Národní centrála proti organizovanému zločinu (NCOZ). Deníku N to potvrdil přímo ministr spravedlnosti Pavel Blažek (ODS). Podle resortu bylo nicméně vše v souladu s právem.
Svobodný a otevřený multiplatformní editor EPUB souborů Sigil (Wikipedie, GitHub) byl vydán ve verzi 2.5.0. Stejně tak doprovodný vizuální EPUB XHTML editor PageEdit (GitHub).
if $a < $b; then echo "a < b" fiprosim vas ako ? najeko sa stale mocem dokola a nejde mi to ...?
if [ $(bc << EOF $a < $b EOF ) -eq 1 ]; then echo "a < b" else echo "a > b" fi
[ $(dc <<<"[1pq]sa$a $b>a0p") -eq 1 ] && echo "a < b" || echo "a > b"
function rnle() { test `echo -e "$1\\n$2" | sort -g | head -n 1` = $1 } function rnge() { test `echo -e "$1\\n$2" | sort -g | head -n 1` = $2 }
rnlt() { if [ ${1:0:1} == '-' -a ${2:0:1} == '-' ] then rngt ${1:1} ${2:1} return $? fi IFS='.' a=($1) b=($2) [ ${a[0]} -lt ${b[0]} ] && return 0 [ ${a[0]} -gt ${b[0]} ] && return 1 i=0 while : do [ -z "${a[1]:$i:1}" -a -n "${b[1]:$i:1}" ] && return 0 [ -z "${b[1]:$i:1}" ] && return 1 [ ${a[1]:$i:1} -lt ${b[1]:$i:1} ] && return 0 let i++ done } rngt() { if [ ${1:0:1} == '-' -a ${2:0:1} == '-' ] then rnlt ${1:1} ${2:1} return $? fi IFS='.' a=($1) b=($2) [ ${a[0]} -gt ${b[0]} ] && return 0 [ ${a[0]} -lt ${b[0]} ] && return 1 i=0 while : do [ -n "${a[1]:$i:1}" -a -z "${b[1]:$i:1}" ] && return 0 [ -z "${a[1]:$i:1}" ] && return 1 [ ${a[1]:$i:1} -gt ${b[1]:$i:1} ] && return 0 let i++ done }Teda zatím to není úplně blbuvzdorné a používá se to.
rnlt $a $b && echo 'a < b' || echo 'a >= b'
function rnle() { [ ${1/.*} -lt ${2/.*} ] && return 0 [ ${1/.*} -gt ${2/.*} ] && return 1 if [ ${1:0:1} = '-' ]; then [ ! ${1#*.}0 \> ${2#*.}0 ] else [ ! ${2#*.}0 \> ${1#*.}0 ] fi }
$ rnle 3.45 3.345 && echo OK OK $ rnle 3 3.345 && echo OK $Nicméně, když na to teď s odstupem koukám, tak je to fakt hnus, co takhle:
rnle() { IFS='.' a=($1) b=($2) [ $a -lt $b ] && return 0 [ $a -gt $b ] && return 1 if [ ${a:0:1} == '-' ] then a[0]=${b[1]} b=${a[1]} else a=${a[1]} b=${b[1]} fi for((i=${#a};i<${#b};i++)); do a=${a}0; done for((i=${#b};i<${#a};i++)); do b=${b}0; done [ $a -ge $b ] && return 1 return 0 }
function rnle() { [ ${1/.*} -lt ${2/.*} ] && return 0 [ ${1/.*} -gt ${2/.*} ] && return 1 if [ ${1:0:1} = '-' ]; then [ ! ${2#*.}0 \> ${1#*.}0 ] else [ ! ${1#*.}0 \> ${2#*.}0 ] fi }
rnlt() { if [ ${1/.*} -ne ${2/.*} ] then [ ${1/.*} -lt ${2/.*} ] elif [ ${1:0:1} = '-' ] then [ ${1#*.}0 \> ${2#*.}0 ] else [ ${2#*.}0 \> ${1#*.}0 ] fi }Tak dnešní kontest jsi vyhrál
function rnlt() { celacast_1=`echo $1|cut -d. -f 1`; descast_1=`echo $1|cut -d. -f 2`; celacast_2=`echo $2|cut -d. -f 1`; descast_2=`echo $2|cut -d. -f 2`; if [ $celacast_1 -eq $celacast_2 ] then if [ $celacast_1 -lt 0 ] then descast_1=`expr -1 \* $descast_1`; descast_2=`expr -1 \* $descast_2`; fi [ $descast_1 -lt $descast_2 ]&& return 0; return 1; else [ $celacast_1 -lt $celacast_2 ]&& return 0; return 1; fi }
${variable#pattern}
, ${variable%pattern}
a používat IFS
by ušetřilo hodně zbytečných subprocesů.
Tiskni
Sdílej: