Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 209. brněnský sraz, který proběhne tento pátek 16. května od 18:00 ve studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1. Jelikož se Brno stalo jedním z hlavních míst, kde se vyvíjí open source knihovna OpenSSL, tentokrát se OpenAlt komunita potká s komunitou OpenSSL. V rámci srazu Anton Arapov z OpenSSL
… více »GNOME Foundation má nového výkonného ředitele. Po deseti měsících skončil dočasný výkonný ředitel Richard Littauer. Vedení nadace převzal Steven Deobald.
Byl publikován přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie) za uplynulé dva měsíce. Servo zvládne už i Gmail. Zakázány jsou příspěvky generované pomocí AI.
Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.
Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.
Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 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.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.
OpenSearch (Wikipedie) byl vydán ve verzi 3.0. Podrobnosti v poznámkách k vydání. Jedná se o fork projektů Elasticsearch a Kibana.
PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.
Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.
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)
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: