Na GOG.com běží Autumn Sale. Při té příležitosti je zdarma hororová počítačová hra STASIS (ProtonDB: Platinum).
Ubuntu 25.10 má nově balíčky sestavené také pro úroveň mikroarchitektury x86-64-v3 (amd64v3).
Byla vydána verze 1.91.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Ministerstvo průmyslu a obchodu vyhlásilo druhou veřejnou soutěž v programu TWIST, který podporuje výzkum, vývoj a využití umělé inteligence v podnikání. Firmy mohou získat až 30 milionů korun na jeden projekt zaměřený na nové produkty či inovaci podnikových procesů. Návrhy projektů lze podávat od 31. října do 17. prosince 2025. Celková alokace výzvy činí 800 milionů korun.
Google v srpnu oznámil, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Iniciativa Keep Android Open se to snaží zvrátit. Podepsat lze otevřený dopis adresovaný Googlu nebo petici na Change.org.
Byla vydána nová verze 18 integrovaného vývojového prostředí (IDE) Qt Creator. S podporou Development Containers. Podrobný přehled novinek v changelogu.
Cursor (Wikipedie) od společnosti Anysphere byl vydán ve verzi 2.0. Jedná se o multiplatformní proprietární editor kódů s podporou AI (vibe coding).
Google Chrome 142 byl prohlášen za stabilní. Nejnovější stabilní verze 142.0.7444.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 20 bezpečnostních chyb. Za nejvážnější z nich bylo vyplaceno 50 000 dolarů. Vylepšeny byly také nástroje pro vývojáře.
Pro moddery Minecraftu: Java edice Minecraftu bude bez obfuskace.
Národní identitní autorita, tedy NIA ID, MeG a eOP jsou nedostupné. Na nápravě se pracuje [𝕏].
Signály zaslané skriptu můžeme odchytávat pomocí příkazu
trap.
trap příkaz signál - jestliže jako příkaz
  uvedeme znak "-", nastaví se pro signál původní
  akce a když '', neprovede se nic (trap -l
  vypíše signály, které lze odchytnout).Vyzkoušejte skript trap.sh.
| #!/bin/bash
konec() {
  echo -n "Uklízím"
  i=0
  while [ "$i" -le 10 ]; do
    i=$((i + 1))
    echo -n "."
    sleep 0,1
  done
  echo
  echo "Konec"
}
trap '' INT
echo "Ctrl+C neudělá nic"
sleep 3
trap - INT
echo "Ctrl+C ukončí skript"
sleep 3
trap 'konec; exit 0' INT
echo "Ctrl+C spustí funkci konec a ukončí skript"
sleep 3
konec
echo "Skript proběhl až do konce"
exit 0 | 
Následující módy shellu nám mohou usnadnit ladění.
verbose - před vykonáním příkaz vypíšextrace - jako předchozí, ale napřed provede expanzi;
                            $PS4 na začátku řádku určuje
                            stupeň expanzenounset - je-li použita nedefinovaná proměnná, ukončí
                             běh skriptu a vypíše chybovou hlášku| #!/bin/bash set -o verbose echo $PWD set -o xtrace echo $PWD echo $(pwd) set +o verbose set +o xtrace set +o nounset echo $nedefinovana_promena set -o nounset echo $nedefinovana_promena echo "Tento řádek se již nevypíše" exit 0 | 
Nyní si skript ladeni.sh spustíme a podíváme se na
jeho výpis.
| $ ./ladeni.sh echo $PWD /root/fuky/clanky/bash set -o xtrace echo $PWD + echo /root/fuky/clanky/bash /root/fuky/clanky/bash echo $(pwd) pwd ++ pwd + echo /root/fuky/clanky/bash /root/fuky/clanky/bash set +o verbose + set +o verbose + set +o xtrace ./ladeni.sh: nedefinovana_promena: unbound variable | 
Máme libovolnou adresářovou strukturu a v ní jsou uložené soubory *.wav, *.ogg a *.mp3.
oggVytvoříme si skript oggwavmp3.sh.
| #!/bin/bash
case "$1" in
  *.wav )
    #cesta="${1%/*}/"
    cesta=$(echo $1 | sed 
            's/^\(.\+\/\)\([^/]\+wav\)$/\1/')
    if [ -d "${cesta}ogg" ]; then
      :
    else
      mkdir "${cesta}ogg"
    fi
    #soubor="${1%.*}.ogg"
    #soubor="${soubor##*/}"
    soubor=$(echo $1 | sed 
             's/^\(.\+\/\)\([^/]\+\)\.wav$/\2.ogg/')
	     
    oggenc "$1" -Q -b 192 -o "${cesta}ogg/$soubor"
    ;;
  *.ogg )
    #soubor="${1%.*}.wav"
    soubor=$(echo $1 | 
             sed 's/\(.\+\)\.\(ogg\)$/\1.wav/')
    if [ "$soubor" ]; then
      sox "$1" "$soubor"
      rm "$1"
    fi
    ;;
  *.mp3 )
    #soubor="${1%.*}.wav"
    soubor=$(echo $1 | sed 
             's/\(.\+\)\.\(mp3\)$/\1.wav/')
    if [ "$soubor" ]; then
      mpg123 "$1" -q -w "$soubor"
      rm "$1"
    fi
    ;;
  * )
    ;;
esac
exit 0 | 
Do souboru ~/.bashrc si přidáme alias a po dalším
spuštění shellu můžeme začít využívat náš nový příkaz.
| alias oggwavmp3='find -type f | xargs -i ~/bash/oggwavmp3.sh {}' | 
Na závěr si zkuste udělat hru Oběšenec. Nastavení hry se provádí pomocí konfiguračního souboru. Lze vybrat, zda se bude rozlišovat diakritika či velikost písmen. Slova či věty jsou uloženy v souborech podle složitosti a jedna z možností nastavení je právě výběr jen některých souborů se slovy (větami). A nakonec je zde i možnost časového omezení při zadávání znaku (příkazu) - v případě, že čas vyprší, bude hráč ihned oběšen. Samozřejmě, že vám dám k dispozici i mé řešení obesenec-1.1.tgz, ale podívejte se na něj až problém sami vyřešíte nebo budete-li opravdu v úzkých.
A to je z našeho seriálu opravdu vše  . Máte poslední možnost zeptat
se na věci, které se do našeho seriálu nevešly, nebo se na ně zapomnělo.
Děkuji všem, kteří seriál průběžně komentují.
. Máte poslední možnost zeptat
se na věci, které se do našeho seriálu nevešly, nebo se na ně zapomnělo.
Děkuji všem, kteří seriál průběžně komentují.
Nástroje: Tisk bez diskuse
        Tiskni
            
                Sdílej:
                 
                 
                 
                 
                 
                 
            
    
basename a dirname. Jo a jen tak mimochodem, nejsou to regulerni, ale regulárni vyrazy.
             )
> Vubec se nechytaji, kdyz nekdo bude chtit prevedet soubory
bez zapisu cesty - v aktualnim adresari (tj. napr. prikazem
"oggwavmp3.sh *.wav") nebo (i kdyz je to prasarna, ale i s
tim by se melo pocitat) soubory v korenovem adresari (tj.
napr. prikazem "oggwavmp3.sh /1.wav")
POZOR asi jste si nevšiml aliasu, ten skript je dělaný pro
něj:
alias oggwavmp3='find -type f | xargs -i ~/bash/oggwavmp3.sh {}'
Vlezu si do adresáře obsahující soubory, které chci převést a
zadám pouze
$ oggwavmp3
, vytvoření argumentů nechám na příkazu find
)
> Vubec se nechytaji, kdyz nekdo bude chtit prevedet soubory
bez zapisu cesty - v aktualnim adresari (tj. napr. prikazem
"oggwavmp3.sh *.wav") nebo (i kdyz je to prasarna, ale i s
tim by se melo pocitat) soubory v korenovem adresari (tj.
napr. prikazem "oggwavmp3.sh /1.wav")
POZOR asi jste si nevšiml aliasu, ten skript je dělaný pro
něj:
alias oggwavmp3='find -type f | xargs -i ~/bash/oggwavmp3.sh {}'
Vlezu si do adresáře obsahující soubory, které chci převést a
zadám pouze
$ oggwavmp3
, vytvoření argumentů nechám na příkazu find  )
> basename, dirname
Díky za připomínku, existuje mnoho řešení a já zrovna zvolil to
složitější, člověk se stále učí a nikdo neví vševědoucí
)
> basename, dirname
Díky za připomínku, existuje mnoho řešení a já zrovna zvolil to
složitější, člověk se stále učí a nikdo neví vševědoucí  
            sleep 0,1 nemelo by tam by sleep 1?
Takhle to chybuje:
Uklízím.sleep: invalid time interval `0,1' Více informací získáte příkazem `sleep --help'. .sleep: invalid time interval `0,1' Více informací získáte příkazem `sleep --help'. .sleep: invalid time interval `0,1'atd.
Díky za upozornění, nějak se mi tam vloudil překlep, místo čárky tam má být tečka sleep 0.1 