Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …
Google Chrome 149 byl prohlášen za stabilní. Nejnovější stabilní verze 149.0.7827.53 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře.
Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.
Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.
Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.
Nejnovější X.Org X server 21.1.23 a Xwayland 24.1.12 řeší 9 bezpečnostních chyb.
npm balíčky @redhat-cloud-services byly kompromitovány.
Byly publikovány informace o zranitelnosti CVE-2026-46243 pojmenované CIFSwitch v Linuxu od roku 2007. Běžný uživatel může získat práva roota (lokální eskalaci práv). V upstreamu je již opraveno.
Nvidia na své konferenci NVIDIA GTC Taipei 2026 představila řadu novinek. Společně s Microsoftem představili superčip NVIDIA RTX Spark (až 6 144 jader GPU, 20 jader CPU, 1 petaflop AI výkonu v FP4 a 128 GB jednotné paměti). První notebooky a stolní počítače s tímto čipem od Nvidie místo Intelu nebo AMD by se měly na trh dostat na podzim letošního roku.
Na Kickstarteru běží kampaň na podporu kapesního počítače s Linuxem CardputerZero od společnosti M5Stack. Postaven je na Raspberry Pi Compute Module 0. Podporuje moduly M5. Koupit lze s rozšířeními LoRa a CC1101.
find -name xxx -exec mv {} yyy\; jste zkousel?
deb http://ftp.cz.debian.org/debian jessie main contrib non-freels -1 | while read FILE ; do NEWFILE=$(echo $FILE | sed -e 's/\(.*\);1/\1/g') ; mv $FILE $NEWFILE ; doneNeresi to stavy kdy by byly dva soubory velmi podobneho jmena v jednom adresari atd. Mimochodem, co to ma spolecneho s rekurzi?
Jirka Vejrazka
#!/usr/bin/env bash
var=`find /prohledavany/adresar -name '*\;1' -print`
for i in "$var"; do
mv "$i" ${i%;1}
done
;1 zakončené i adresáře. Zkusil bych něco jako:
files=`find . -name '*\;1' -print | sed 's/\n/\ /g'`
for i in $files; do
mv "$i" "`echo "$i" |sed "s/;1//g"`";
done
Jde o to, ze takhle se jmena vsech souboru nacpou do promenne var a ta se pak zpracovava. Pokud se to pusti na adresare s desetitisici soubory, tak to muze zhavarovat. Lepsi je to delat primo pres volby findu -exec nebo -execdir.
V tomto pripade to bude celkem jedno, ale podobne nevhodne koncipovanych skriptu je zde prezentovana cela rada. Chtelo by to ukazkovy priklad, at lidi vidi, jak se to ma delat.
(A proc to nenapisu sam? Protoze mam hlad a jdu domu ...)
find /adresar -type f -exec bash -c 'mv "$0" "${0%;1}"' '{}' \;
Vysvetleni: Find pres volbu -exec spusti bash a preda mu 3 parametry: (1) -c, (2) mv "$0" "${0%;1}" a (3) jmeno souboru. Bash podle volby -c pozna, ze ma argument (2) interpretovat jako seznam prikazu. Argument (3) vlozi Bash do promenne $0. Seznam prikazu (argument (2)) pak uz jen pouzije promennou $0.
Pokud tam vidite nejakou chybu, tak to opravte. Normalni lidi pouzivaji neco jako
find /adresar -type f -exec ./prejmenuj '{}' \;
kde prejmenuj je napr.
#!/bin/bash
mv "$1" "${1%;1}"
ale me to po tech zhavych psech nedalo, a ten skript jsem vecpal do jednoho radku.
find /adresar -type f -exec bash -c 'echo mv _"$0"_ _"${0%;1}"_' '{}' \;
(Podtrzitka jsou tam proto, aby bylo videt, kde zacinaji a konci jednotlive argumenty.) Tyhle "zhustene" prikazy sice vypadaji cool, ale pokud se clovek splete, tak muze natropit hodne skody.
Tiskni
Sdílej: