Spotify prostřednictvím svého FOSS fondu rozdělilo 70 000 eur mezi tři open source projekty: FFmpeg obdržel 30 000 eur, Mock Service Worker (MSW) obdržel 15 000 eur a Xiph.Org Foundation obdržela 25 000 eur.
Nazdar! je open source počítačová hra běžící také na Linuxu. Zdrojové kódy jsou k dispozici na GitHubu. Autorem je Michal Škoula.
Po více než třech letech od vydání verze 1.4.0 byla vydána nová verze 1.5.0 správce balíčků GNU Guix a na něm postavené stejnojmenné distribuci GNU Guix. S init systémem a správcem služeb GNU Shepherd. S experimentální podporou jádra GNU Hurd. Na vývoji se podílelo 744 vývojářů. Přibylo 12 525 nových balíčků. Jejich aktuální počet je 30 011. Aktualizována byla také dokumentace.
Na adrese gravit.huan.cz se objevila prezentace minimalistického redakčního systému GravIT. CMS je napsaný ve FastAPI a charakterizuje se především rychlým načítáním a jednoduchým ukládáním obsahu do textových souborů se syntaxí Markdown a YAML místo klasické databáze. GravIT cílí na uživatele, kteří preferují CMS s nízkými nároky, snadným verzováním (např. přes Git) a možností jednoduchého rozšiřování pomocí modulů. Redakční
… více »Tým Qwen (Alibaba Cloud) uvolnil jako open-source své modely Qwen3‑TTS pro převádění textu na řeč. Sada obsahuje modely VoiceDesign (tvorba hlasu dle popisu), CustomVoice (stylizace) a Base (klonování hlasu). Modely podporují syntézu deseti různých jazyků (čeština a slovenština chybí). Stránka projektu na GitHubu, natrénované modely jsou dostupné na Hugging Face. Distribuováno pod licencí Apache‑2.0.
Svobodný citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 8. Přehled novinek v příspěvku na blogu.
Byla vydána verze 1.93.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.
Svobodný operační systém ReactOS (Wikipedie), jehož cílem je kompletní binární kompatibilita s aplikacemi a ovladači pro Windows, slaví 30. narozeniny.
Společnost Raspberry Pi má nově v nabídce flash disky Raspberry Pi Flash Drive: 128 GB za 30 dolarů a 256 GB za 55 dolarů.
Technologie Skip pro multiplatformní mobilní vývoj, která umožňuje vývojářům vytvářet iOS a Android aplikace z jediné Swift a SwiftUI kódové základny, se s vydáním verze 1.7 stala open source.
rm aby smazal jenom [A-Z] soubory?
..omlouvám se, je to stupidní ale nic mě nenapadá, tj. ani pod čím bych to našel... (Když nic tak aspoň script, please ;) )
rm $(ls | egrep '^[A-Z]+$')
rm: too few arguments
Try `rm --help' for more information.
je přesně to co to vrátí. Jinak soubory mají tvar XXX.xxx až XXX~1.xxx, typická ošklivá DOS jména...
rm "$(ls |egrep '^[A-Z]+.h3m')"
a vrátilo mi to:
cannot remove \nXXX.h3m
Takže už zbývá jenom odtázka jak převést \n na mezeru?
man sed
/n nebo ho opravit v následujícím příkazu budu ti jen vděčný.
rm "$(ls | egrep '^[A-Z][A-Z]+.h3m')"
..operace je prováděna na FAT32 disku
..dotaz jsem dodatečně upřesnil
ls hodí na jeden řádek víc jmen a s tím se (e)grep neporadí...
for i in *; do
if [ "$(echo $i | egrep '^[A-Z ]+$')" ]; then
rm "$i"
fi
done
DOS 8.3 name, tudíž i s mezerami
~ a číslo/a
[A-Z,.-_ ], všechny znaky povolené znaky v DOSu si už prostě nepamatuju.
hynek[~]$ echo a | egrep '[A-Z]' a hynek[~]$
echo a | egrep '[A-Z]*'? To by bylo v pořádku.
echo a není vůbec žádný znak z ropzsahu [A-Z]. Mě se ta úloha nedaří vyřešit jinak, než grep -v '[a-z]'. Můj grep i bash si prostě myslí, že když napíšu [A-Z], měl jsem patrně na mysli [a-zA-Z] a asi jsem byl jen línej.
[e]grep a bash poněkud nas... echo a | perl -ne 'm/[A-Z]/ && print'
"Many locales sort characters in dictionary order, and in these locales [a-d] is typically not equivalent to [abcd]; it might be equivalent to [aBbCcDd], for example. To obtain the traditional interpretation of bracket expressions, you can use the C locale by setting the LC_ALL environment variable to the value C."
Takže následující funguje podle očekávání:
dunric@darkstar:~$ echo a | LC_ALL=C grep '[A-Z]'
dunric@darkstar:~$
dunric@darkstar:~$ echo A | LC_ALL=C grep '[A-Z]'
A
dunric@darkstar:~$
$ locale LANG=cs_CZ.UTF-8 LC_CTYPE="cs_CZ.UTF-8" LC_NUMERIC="cs_CZ.UTF-8" LC_TIME="cs_CZ.UTF-8" LC_COLLATE=C LC_MONETARY="cs_CZ.UTF-8" LC_MESSAGES="cs_CZ.UTF-8" LC_PAPER="cs_CZ.UTF-8" LC_NAME="cs_CZ.UTF-8" LC_ADDRESS="cs_CZ.UTF-8" LC_TELEPHONE="cs_CZ.UTF-8" LC_MEASUREMENT="cs_CZ.UTF-8" LC_IDENTIFICATION="cs_CZ.UTF-8" LC_ALL= $ grep '[á-é]' Neoprávněný přístup do paměti (SIGSEGV)
Zkusím se na to někdy o víkendu kouknout...
grep namá, jak se zdá, regexp připravený na unicode.
Within a bracket expression, a range expression consists of two charac-
ters separated by a hyphen. It matches any single character that sorts
between the two characters, inclusive, using the locale's collating
sequence and character set. For example, in the default C locale,
[a-d] is equivalent to [abcd]. Many locales sort characters in dictio-
nary order, and in these locales [a-d] is typically not equivalent to
[abcd]; it might be equivalent to [aBbCcDd], for example. To obtain
the traditional interpretation of bracket expressions, you can use the
C locale by setting the LC_ALL environment variable to the value C.
To je ale záludnost
hynek[~]$ LC_ALL=C hynek[~]$ echo a | egrep '[A-Z]' hynek[~]$Řešením je samozřejmě použít i [:upper:]. Funguje to například i v
rm [[:upper:]]*případně
find -name '[[:upper:]]*' -print0 | xargs -0 rm(Maže soubory začínající na velké písmeno)
Tiskni
Sdílej: