Na YouTube byly zveřejněny videozáznamy přednášek z hackerské konference DEF CON 33, jež proběhla 7. až 10. srpna v Las Vegas.
Bun (Wikipedie), tj. běhové prostředí (runtime) a toolkit pro JavaScript a TypeScript, alternativa k Node.js a Deno, byl vydán ve verzi 1.3. Představení novinek také na YouTube. Bun je naprogramován v programovacím jazyce Zig.
V Lucemburku byly oznámeny výsledky posledního kola výzev na evropské továrny pro umělou inteligenci neboli AI Factories. Mezi úspěšné žadatele patří i Česká republika, potažmo konsorcium šesti partnerů vedené VŠB – Technickou univerzitou Ostrava. V rámci Czech AI Factory (CZAI), jak se česká AI továrna jmenuje, bude pořízen velmi výkonný superpočítač pro AI výpočty a vznikne balíček služeb poskytovaný odborníky konsorcia. Obojí bude sloužit malým a středním podnikům, průmyslu i institucím veřejného a výzkumného sektoru.
Byla vydána (𝕏) zářijová aktualizace aneb nová verze 1.105 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.105 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Ve Firefoxu bude lepší správa profilů (oddělené nastavení domovské stránky, nastavení lišt, instalace rozšíření, uložení hesla, přidání záložky atd.). Nový grafický správce profilů bude postupně zaváděn od 14.října.
Canonical vydal (email) Ubuntu 25.10 Questing Quokka. Přehled novinek v poznámkách k vydání. Jedná se o průběžné vydání s podporou 9 měsíců, tj. do července 2026.
ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzi 1.5.0.
Byla vydána nová verze 1.12.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.
V Redisu byla nalezena a v upstreamu již opravena kritická zranitelnost CVE-2025-49844 s CVSS 10.0 (RCE, vzdálené spouštění kódu).
Ministr a vicepremiér pro digitalizaci Marian Jurečka dnes oznámil, že přijme rezignaci ředitele Digitální a informační agentury Martina Mesršmída, a to k 23. říjnu 2025. Mesršmíd nabídl svou funkci během minulého víkendu, kdy se DIA potýkala s problémy eDokladů, které některým občanům znepříjemnily využití možnosti prokázat se digitální občankou u volebních komisí při volbách do Poslanecké sněmovny.
for i in /root/*.* do echo "$i" done
for i in /root/* /root/.??*; do echo "$i" doneTaké se dá použít
find
...
/root/.3to vypíše
/root/.??*
find
?
.var
:
for i in /root/.var/*; do echo "$i" done
/root
. Co tím zamýšlíš?
Nezobrazování souborů s tečkou na začátku není záležitostí Linuxu, ale shellu. Je to tak úmyslně, aby nám tyto soubory nepřekážely při práci. Tato vlastnost se dá vypnout, ale obvykle k tomu není důvod.
find nejde použít, hleda vždy celou strukturu, navíc potřebuji s každou položkou jednotlivě dál pracovat.spis find TY neumis pouzit
find . -maxdepth 1 -type f -name '*' -exec basename {} \;tohle prohledava jen aktualni adresar, hleda jen regulerni soubory, nazvy s teckou i bez, a odebere z vysledku cestu (prikaz basename), misto toho, nebo za to, lze pouzit primo to dalsi zpracovani kazde polozky zvlast, nebo to jde pouzit ve smycce:
for soubor in $(find . -maxdepth 1 -type f -name '*' -exec basename {} \;); do prikaz $soubor done
find . -maxdepth 1 -type f -name '*' -exec prikaz '{}' \;
find . -maxdepth 1 -type f -name '*' -exec sh -c 'echo "s cestou: {}"; echo "bez cesty: $(basename "{}")"; ls -l "{}"' \;
for soubor in "$(find . -maxdepth 1 -type f -name '*' -exec basename "{}" \;)";do echo "$soubor" done
Nazvy adresaru to vubec nevypisuje, navic to vypisuje i nadrazeny nazev adresare, echo "$soubor" vrati vsechny nazvy najednou a ne po jednom, tak ze s kazdym nazvem samostatne pracovat nemuzu...
ls
?
Chceš si snad sestavit vlastní příkaz ls
?
Ne, snažím se jen vypsat z jediného adresáře všechny názvy položek které tam jsou. Ale vidím, že napsat ovladač pro grafickou kartu je jednodušší než vypsat stupidní názvy položek.
ls -la
ls -A1
for i in /root/*.* do echo "$i" doneopraven podle tebe
for i in $(ls -A1 "/root/") do echo "$i" doneopravdu myslíš, že vypíše všechny názvy položek? I ty které mají mezeru před/za tečkou?
ls -A1 /root/dělá přesně to, co jsi požadoval. Pokud potřebuješ něco speciálního, tak si to můžeš napsat v Perlu nebo v Pythonu. Jako bonus dostaneš, že to bude rychlejší.
Nevim no, bud to fakt nejde a jen si ze me delate prdel, nebo me proste poradit nechcete
Spíš je problém v tom, že místo rady očekáváte hotové a důkladně otestované řešení na stříbrném podnose, možná i s uctivým dotazem, zda kousat už budete laskavě sám. Máte štěstí, že kolega je takový dobrák a místo trpělivého přizpůsobování novým požadavkům vám tam nepřidal třeba "-delete
".
Nazvy adresaru to vubec nevypisuje
Co se takhle zamyslet/podívat, co znamená "-type f
"?
navic to vypisuje i nadrazeny nazev adresare
To je tak zmatené, že mi až na třetí pokus došlo, co byste tím asi tak mohl myslet. Jestli jde o to "./
", tak si to prostě odřízněte třeba pomocí "${f##*/}
".
echo "$soubor" vrati vsechny nazvy najednou
Samozřejmě, protože jste si vybral tu druhou možnost, kde je to celé v uvozovkách. Osobně bych se vykašlal na eleganci a šel cestou nejmenšího odporu:
shopt -s nullglob for f in * .*; do test -f "$f" || continue ... done
nebo pokud chcete nejen obyčejné soubory, tak
shopt -s nullglob for f in * .*; do if [ "$f" = . -o "$f" = .. ]; then continue; fi ... done
Samozřejmě, protože jste si vybral tu druhou možnost...Samozřejmě, kdybych dokázal rozlišit špatnou radu od dobré, tak tady nejsem a neřeším výpis položek půl dne.
-name '*'
" automaticky splněná (a tedy zbytečná)?
Protože defaultně (pokud si nenastavíte dotglob
option), se soubory, jejichž jméno začíná tečkou ("skryté"), považují za odpovídající pouze pokud i příslušná část masky začíná tečkou:
When a pattern is used for pathname expansion, the character ``.'' at the start of a name or immediately following a slash must be matched explicitly, unless the shell option dotglob is set.
Mimochodem, "*.*
" je až na výjimky zastydlý DOSismus; opravdu jste tím myslel "všechny soubory s tečkou ve jménu (kromě začátku)"?
( IFS=$'\n' for f in $(ls -ad1 *); do echo "$f" done )
Zaprvé, *.*
je špatný nápad, protože to zbytecně vyžaduje tečku v názvu souboru. Takže soubor s názvem z
tam vůbec nebude.
Zadruhé, asterisk se expanduje jenom na názvy, které nezačínají tečkou. Aby ukazoval všechny názvy, musí se mu trochu pomoct. Já bych to zapsal asi takto:
for file in * .[^.]* ..?*; do [[ -e "$file" ]] && echo "$file" || : done
Tohle^^^ vypisuje i adresáře — pokud to mají být jen soubory, stačí tam dát -f
místo -e
.
Tiskni
Sdílej: