Po více než dvou letech od vydání předchozí verze 2.12 byla vydána nová stabilní verze 2.14 systémového zavaděče GNU GRUB (GRand Unified Bootloader, Wikipedie). Přehled novinek v souboru NEWS a v aktualizované dokumentaci.
Google Chrome 144 byl prohlášen za stabilní. Nejnovější stabilní verze 144.0.7559.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 10 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře (YouTube).
Microsoft zveřejnil zdrojový kód XAML Studia a uvolnil ho pod MIT licencí. XAML Studio je nástroj ze světa Windows, určený pro tvorbu uživatelského rozhraní aplikací pomocí XAML (Extensible Application Markup Language). Stalo se tak zhruba po osmi letech od prvního prohlášení Microsoftu, že se tento kód chystá zveřejnit.
TimeCapsule, 'časová kapsle', je jazykový model trénovaný výhradně na datech z určitých míst a časových období, aby se tak napodobila autentická slovní zásoba, způsob vyjadřování a názory dané doby. Na Hugging face jsou k dispozici modely natrénované na historických textech dostupných v oblasti Londýna mezi lety 1800 až 1875.
Radicle byl vydán ve verzi 1.6.0 s kódovým jménem Amaryllis. Jedná se o distribuovanou alternativu k softwarům pro spolupráci jako např. GitLab.
Zemřel Scott Adams, tvůrce komiksových stripů Dilbert parodujících pracovní prostředí velké firmy.
Sdružení CZ.NIC vydalo novou verzi Knot Resolveru (6.1.0). Jedná se o první vydanou stabilní verzi 6, která je nyní oficiálně preferovanou a doporučovanou verzí, namísto předešlé verze 5. Více o Knot Resolveru 6 je možné se dočíst přímo v dokumentaci.
Byl vydán Linux Mint 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.
Wine bylo po roce vývoje od vydání verze 10.0 vydáno v nové stabilní verzi 11.0. Přehled novinek na GitLabu. Vypíchnuta je podpora NTSYNC a dokončení architektury WoW64.
Byl vydán Mozilla Firefox 147.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Firefox nově podporuje Freedesktop.org XDG Base Directory Specification. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 147 bude brzy k dispozici také na Flathubu a Snapcraftu.
celkem=$(ls -1 /usr/share/fortune/cs/*.dat | wc -l ) ; soubor=$(( $RANDOM % $celkem )) ; rec=$(ls -1 /usr/share/fortune/cs/*.dat | head -n $soubor | tail -1) ; fortunik=${rec%%.*} ; fortune $fortunik
Řešení dotazu:
Ano , v archu mám :
ls /usr/share/fortune/cs cimrman citat.dat hornicek ignac.dat klasik-cz lkml.dat mikulas murphy.dat plihal pratchett.dat reddwarf stoa1.dat vodnansky wodehouse.dat cimrman.dat filmy hornicek.dat jerome klasik-cz.dat lodge mikulas.dat parafraze plihal.dat prislovi reddwarf.dat stopar vodnansky.dat wright citace filmy.dat chesterton jerome.dat klasik-sk lodge.dat mladik parafraze.dat pocitace prislovi.dat skala stopar.dat wikiquote wright.dat citace.dat guth chesterton.dat josef klasik-sk.dat market mladik.dat parkinson pocitace.dat rdvcitaty skala.dat valka wikiquote.dat zemeplocha citat guth.dat ignac josef.dat lkml market.dat murphy parkinson.dat pratchett rdvcitaty.dat stoa1 valka.dat wodehouse zemeplocha.dat
Chci dát do bashrc kde nyní mám
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
alias ls='ls --color=auto'
PS1="\[\033[0;37m\]\342\224\214\342\224\200\$([[ \$? != 0 ]] && echo \"[\[\033[0;31m\]\342\234\227\[\033[0;37m\]]\342\224\200\")[$(if [[ ${EUID} == 0 ]]; then echo '\[\033[0;31m\]\h'; else echo '\[\033[0;33m\]\u\[\033[0;37m\]@\[\033[0;96m\]\h'; fi)\[\033[0;37m\]]\342\224\200[\[\033[0;32m\]\w\[\033[0;37m\]]\n\[\033[0;37m\]\342\224\224\342\224\200\342\224\200\342\225\274 \[\033[0m\]"
alias pacman='sudo pacman'
alias nmap='sudo nmap -sV -O -v '
alias ssh='ssh -X -C '
export EDITOR="mcedit"
celkem=$(ls -1 /usr/share/fortune/cs/*.dat | wc -l ) ; soubor=$(( $RANDOM % $celkem )) ; rec=$(ls -1 /usr/share/fortune/cs/*.dat | head -n $soubor | tail -1) ; fortunik=${rec%%.*} ; echo -e "Hláška '"${fortunik##*/}"'\n" ; fortune $fortunik
alias kec= ..... ale ten dlouhej příkaz ze stejnou funkcí mi to nežere
takže potřebuju něco aby ve složce usr/share/fortune/cs/ spočítalo počet souborů bez koncovky .dat , pak náhodně jeden vybralo a spustilo se správným parametrem fortune.
fortune `find * -name '*.txt' -print | sort -R | head -n1 | sed s/\.txt//`
Jo je to asi lepší : find /usr/share/fortune/cs/* -name '*.dat' -print | sort -R | head -n1 | sed s/\.dat//
Asi nerozumíš jednoduchému dotazu že se nesmí zobrazovat soubory .dat ale bez přípony a to s uvedením cesty nijak nezkrátí. příkaz.
To co je ve složce je již v předchozích příspěvcích ukázáno.
rec=$(find /usr/share/fortune/cs -name '*.dat' | sort -R | head -n1 | sed s/\.dat//) ; echo -e "Hláška -"${rec##*/}"-\n" ; fortune $rec ; echo
Dobře , zkráceno podle tebe (nějak sem si přečetl jen začátek a konec tvé reakce)
Bohuzel standartni chovani neni vypsat nazev databaze hlasek ze ktere se prave ukazuje text a take ze nechci jinou nez slozku cesky .
A takto by to neslo:
fortunecz(){ set *.dat; chosen=$(( $RANDOM % $# )); eval fortune \${${chosen}%%.*};}
a dat to do ~/.bashrc napr. ako ste navrhli ?
#fortunecz
fortune:/bin/bash not a fortune file or directory
No fortunes found
ne takto mi to nefunguje
Nefunguje, bo som zabudol na adresar:
fortunecz(){ dir=/usr/share/fortune/cs/; set "$dir"/*.dat; chosen=$(( $RANDOM % $# )); eval fortune \${${chosen}%%.*}; }Som to odskusal priamo v adresare s nimi, tak sa chybicka vloudila. Ale inak u mna to funguje.
Taktiez je problem, ze premenna chosen niekedy ma hodnotu 0, co je shell samotny. Bud zavolat random znova, alebo jednoducho takto ( a ma tu mozno za to aj dakto zozerie :) ):
fortunecz(){ dir=/usr/share/fortune/cs/; set "$dir"/*.dat; chosen=$(( $RANDOM % $# + 1 )); eval fortune \${${chosen}%%.*}; }
Ok, ja dneska koncim uz, lebo co je moc, to je moc. Fortune sice vzdy vrati daco, ale problem je, ze tym pripocitanim 1 sa sice odstrani chyba ohladne volania $0, ale na hornom konci rozsahu bude hodnota $n prazdna a fortune zoberie hlasku aj z ineho ako ceskeho adresara. Takze takto by to mohlo byt, aspon ja by som bol spokojny:
fortunecz(){ dir=/usr/share/fortune/cs/; set "$dir"/*.dat; chosen=$(( $RANDOM % $# )); [[ $chosen -eq 0 ]] && let chosen++; eval fortune \${${chosen}%%.*}; }Mojim cielom bolo cisto v bash-i to vyriesit, lebo si osobne myslim, ze volat find, tail, sort pre tuto ulohu je zbytocne. p.s: Asi by som mal mat daky casovy limit vynuteny po zobrazeni nahladu, kedy sa postavim zo stolicky a zacnem aj premyslat, nez nieco odoslem. :)
$ f=( /path/*.dat ) result="${f[RANDOM%${#f[@]}]%.dat}" && fortune "${result##*/}"
Nevidím jediný rozumný důvod proč to řešit čistě v Bashi. Oproti volání find a shuf je to výrazně méně čitelné.
BTW: Jinak co se týče Bashe, určitě bych se snažil vyhnout psát v něm co rozsáhlejšího, skripty jsou hodně nečitelné a špatně udržovatelné. Rozhodně je mnohem lepší použít Python.
Tiskni
Sdílej: