Google v pátek spustil v Česku Vyhledávání Live. Tato novinka umožňuje lidem vést plynulou konverzaci s vyhledávačem v češtině. A to prostřednictvím hlasu, nebo prostřednictvím toho, na co ukážou svým fotoaparátem či kamerou v mobilu. Rozšíření této multimodální funkce je možné díky nasazení Gemini 3.1 Flash Live, nového hlasového a audio modelu, který je od základu vícejazyčný, takže umožňuje lidem po celém světě mluvit na vyhledávač přirozeně a v jazyce, který je jim nejbližší.
Jsongrep je open-source nástroj, který efektivně prohledává JSON dokumenty (editovat je neumí). Kompiluje regulérní jazyk dotazu do podoby deterministického konečného automatu (DFA), díky čemuž prochází strom JSON dokumentu pouze jednou a je v tom tedy rychlejší než jiné nástroje jako jsou například jq, JMESPath nebo jql. Jsongrep je napsaný v programovacím jazyce Rust, zdrojový kód je dostupný na GitHubu.
O víkendu probíhá v Praze na Karlově náměstí 13 konference Installfest 2026. Na programu je celá řada zajímavých přednášek a workshopů. Vstup na konferenci je zcela zdarma, bez nutnosti registrace. Přednášky lze sledovat i online na YouTube.
Mozilla a společnost Mila oznámily strategické partnerství za účelem rozvoje open source a suverénní AI. Cílem je ukázat, že open source AI může konkurovat uzavřeným systémům. Obě organizace chtějí posílit technologickou suverenitu a snížit závislost na hrstce velkých technologických firem.
Adam Rice předvedl, že pomocí DNS lze distribuovat a spustit kompletní hru DOOM. Rozdělil WAD soubory a binárky do téměř 2000 DNS záznamů v Cloudflare zóně (jeden TXT záznam v DNS může nést okolo 2000 znaků textu). Ty pak stáhl PowerShellem, dekomprimoval a spustil přímo v paměti počítače bez nutnosti zápisu na disk, což prakticky dokazuje, že DNS může sloužit jako distribuované úložiště dat a možný kanál pro načítání kódu. Repozitář projektu je na GitHubu.
Dnes a zítra probíhají Arduino Days 2026. Na programu je řada zajímavých přednášek. Sledovat je lze od 17:00 na YouTube. Zúčastnit se lze i lokálních akcí. Dnes v Poličce v městské knihovně a zítra v Praze na Matfyzu.
Byla vydána beta verze Ubuntu 26.04 LTS s kódovým názvem Resolute Raccoon. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 26.04 LTS mělo vyjít 23. dubna 2026.
Byla vydána aktualizována Příručka pro začínající wikipedisty a wikipedistky (pdf).
Ubuntu plánuje v budoucích verzích nahradit tradiční nástroje pro synchronizaci času (chrony, linuxptp a gpsd) novým, v Rustu napsaným ntpd-rs, který nabídne vyšší bezpečnost a stabilitu.
Byla vydána nová verze 7.6 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Správce hesel KeePassXC byl nahrazen správcem hesel GNOME Secrets. Bitcoinová peněženka Electrum byla povýšena na verzi 4.7.0. Tor Browser byl povýšen na verzi 15.0.8. Další novinky v příslušném seznamu.
find a exec cp, ale nevím jak tam dostat ten nadřazený adresář.data/a/dokumentace data/b/dokumentace data/e/dokumentace data/k/dokumentacezkopírovat do cíle:
cíl/a/dokumentace cíl/b/dokumentace cíl/e/dokumentace cíl/k/dokumentaceMožná jsem hledal špatně, ale na podobný požadavek jsem dotaz nikde nezahlédl.Díky.
Řešení dotazu:
cd data
for dir in * ;
do
if [ -d $dir ] && [ -d ${dir}/dokumentace ]
then
# vlastni kopirovani dat
mkdir -p ../cil/${dir}/dokumentace
cp ${dir}/* ../cil/${dir}
cp ${dir}/dokumentace/* ../cil/${dir}/dokumentace
fi
done
cp ${dir}/dokumentace/* ../cil/${dir}/dokumentaceJestli jsou pod tim adresarem 'dokumentace' jeste dalsi podadresare, tak lze pochopitelne pouzit:
cp -r ${dir}/dokumentace ../cil/${dir}/dokumentace
find a scriptik co to zavolá by to určitě šlo lehce.
cd /cesta/k/data
find . -maxdepth 2 -type d -regex ".*/dokumentace$" -exec mkdir -p "/cesta/k/cil/{}" \;
find . -maxdepth 2 -type d -regex ".*/dokumentace$" -exec cp -r "{}" "/cesta/k/cil/{}" \;
cd /cesta/k/data
find . -maxdepth 2 -type d -regex "\.\/.*/dokumentace$" -exec mkdir -p "/home/imega/cil/{}" \;
find . -maxdepth 2 -type d -regex "\.\/.*/dokumentace$" -exec cp -r "{}/../" "/home/imega/cil/{}/../" \;
Osobně bych to realizoval přes find, který by přes -exec volal skript, kde by se akce realizovaly.
/home/imega má být /cesta/k – aspoň je vidět, že jsem si to i zkusil :)
Ja to delam takhle:
mkdir testovaci_adresar/data
cd testovaci_adresar/data
mkdir -p a/dok; touch a/soub1 a/dok/soub2
touch b
mkdir c; touch c/soub3
mkdir -p d/dok ; touch d/soub4 d/dok/soub5
touch e
Tim jsem si vytvoril smes souboru a adresaru ruznych urovni a na nich si pak delam pokusy
A pointa?Nebudes davat do verejnych diskuzi jedno platne prihlasovaci jmeno na tvuj system. To je takova zakladni ochrana proti crackerum, kteri se chteji probourat na tvuj system.
$ find . -type d -name 'dokumentace' -printf '%h\n' |xargs -i cp -a {} cil
cp /data/a{./dokumentace} cil/a, tak se nehneme z mista.
cp /data/a{./dokumentace} cil/aSakra, zase preklep
Ma byt carka misto tecky ve slozenych zavorkach.
cp /data/a{,/dokumentace} cil/a
Ještě doplním pár věcí, ale ty nejsou předmětem dotazu. Moc dík za pomoc.
-r"
Jen jeste v takovem pripade muzes nahradit to mkdir -p ../cil/${dir}/dokumentace jenom mkdir ../cil/$dir
Moc dík za pomocNeni zac.
3. kopiruje i jine podadresare nez jenon "dokumentace" (coz tazatel zrejme chtel)Ma byt samozrejme "NEchtel".
Zadání není jednoznačné, takže se lze jen domnívat co tazatel přesně chtěl.
kopiruje data/X/ do cil/ (tedy ne do cil/X)
Kopíruje data/X do cil, tj. v adresáři cíl bude podadresář X čili kopíruje data/X/ do cil/X, vyzkoušej si co dělá:
$ cp -a data/X cil
kopiruje i jine podadresare nez jenon "dokumentace"
Tak kopírujte jen podadresář dokumentace:
$ find . -type d -name 'dokumentace' |xargs -i rsync -aR {} cil
najde i jine adresare 'dokumentace' nez pouze v druhe urovni
Tak si specifikujte v jaké úrovni budete adresář dokumentace zpracovávat:
$ find . -mindepth 3 -maxdepth 3 -type d -name 'dokumentace' |xargs -i rsync -aR {} cil
Ještě nějaká nejasnost?
Kopíruje data/X do cil, tj. v adresáři cíl bude podadresář X čili kopíruje data/X/ do cil/X, vyzkoušej si co dělá:Ano, popletl jsem to. Pomotal jsem
cp -r data/x cila
cp -r data/x/* cil
Pochopil jsem to dobre?
~/zkouska$ find . ./bleble ./bleble/dokumentace ./bleble/dokumentace/zkouska ./blabla ./bloblo ./bloblo/bubu ./bloblo/dokumentace ./bloblo/dokumentace/zkouska ~/zkouska$ cp --parents */dokumentace/* ../zkouska1/ ~/zkouska$ find ../zkouska1/ ../zkouska1/ ../zkouska1/bleble ../zkouska1/bleble/dokumentace ../zkouska1/bleble/dokumentace/zkouska ../zkouska1/bloblo ../zkouska1/bloblo/dokumentace ../zkouska1/bloblo/dokumentace/zkouskaMarek
" ./zkouska/bleble se nezkopiruji do ../zkouska1/bleble."
A ma se kopirovat, nebo ne?
Toto
cp -r --parents */dokumentace/* ../zkouska1/
podle mne dela:
Pokud existuje adresar dokumentace ve druhe urovni, tak ho zkopiruji i s nadrizenym adresarem rekurzivne do ./zkouska1/
MarekA ma se kopirovat, nebo ne?Myslim, ze tazatel se vyjadril, ze ma. Zkousel jsi, co ten tvuj 'cp' kopiruje? Protoze ja to zkousel a nekopiruje tu prvni uroven. Vytvor si soubor v zkouska/bleble (napr. takhle:
touch ./zkouska/bleble/abc), spust na to ten tvuj cp a podivej se, co mas v zkouska1/bleble. Soubor 'abc' to rozhodne nebude
To stejne plati pro soubory (i adresare) v ./zkouska/bleble/dokumentace/zkouska
DIR="./zkouska/bleble/dokumentace/zkouska"
touch ${DIR}/def
mkdir ${DIR}/podadr
touch ${DIR}/podadr/ghi
^^ Ani jeden z nich se nezkopiruje.
Co tedy delam spatne, ze si myslym, ze mne to funguje?
~/zkouska$ DIR="./bleble/dokumentace/zkouska"
~/zkouska$ mkdir ./bleble/dokumentace/zkouska
~/zkouska$ touch ${DIR}/def
~/zkouska$ mkdir ${DIR}/podadr
~/zkouska$ touch ${DIR}/podadr/ghi
~/zkouska$ find
.
./bleble
./bleble/dokumentace
./bleble/dokumentace/zkouska
./bleble/dokumentace/zkouska/podadr
./bleble/dokumentace/zkouska/podadr/ghi
./bleble/dokumentace/zkouska/def
./blabla
./bloblo
./bloblo/bubu
./bloblo/dokumentace
./bloblo/dokumentace/dir
./bloblo/dokumentace/dir/file
./bloblo/dokumentace/zkouska
~/zkouska$ mkdir ../zkouska1
~/zkouska$ cp -r --parents */dokumentace/* ../zkouska1/
~/zkouska$ find ../zkouska1
../zkouska1
../zkouska1/bleble
../zkouska1/bleble/dokumentace
../zkouska1/bleble/dokumentace/zkouska
../zkouska1/bleble/dokumentace/zkouska/podadr
../zkouska1/bleble/dokumentace/zkouska/podadr/ghi
../zkouska1/bleble/dokumentace/zkouska/def
../zkouska1/bloblo
../zkouska1/bloblo/dokumentace
../zkouska1/bloblo/dokumentace/dir
../zkouska1/bloblo/dokumentace/dir/file
../zkouska1/bloblo/dokumentace/zkouska
Marek
Co tedy delam spatne, ze si myslim, ze mne to funguje?Zapomnel jsi si vytvorit ten soubor v ./bleble jak jsem psal (touch ./bleble/abc) Jinak se omlouvam, ze jsem nepostrehl to pridani prepinace "-r" do "cp". Tim se resi to kopirovani adresarove struktury pod 'dokumentace'.
Tiskni
Sdílej: