Byla vydána nová verze 4.5 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.
Byla vydána verze 3.0 (Mastodon) nástroje pro záznam a sdílení terminálových sezení asciinema (GitHub). S novou verzí formátu záznamu asciicast v3, podporou live streamingu a především kompletním přepisem z Pythonu do Rustu.
Canonical oznámil, že bude podporovat a distribuovat toolkit NVIDIA CUDA (Wikipedie) v Ubuntu.
Tržní hodnota americké společnosti Alphabet, která je majitelem internetového vyhledávače Google, dnes poprvé překonala hranici tří bilionů dolarů (62,1 bilionu Kč). Alphabet se připojil k malé skupině společností, které tuto hranici pokořily. Jsou mezi nimi zatím americké firmy Nvidia, Microsoft a Apple.
Spojené státy a Čína dosáhly dohody ohledně pokračování populární čínské platformy pro sdílení krátkých videí TikTok v USA. V příspěvku na síti Truth Social to dnes naznačil americký prezident Donald Trump. Dosažení rámcové dohody o TikToku vzápětí oznámil americký ministr financí Scott Bessent, který v Madridu jedná s čínskými představiteli o vzájemných obchodních vztazích mezi USA a Čínou. Bessentova slova později potvrdila také čínská strana.
MKVToolNix, tj. sada nástrojů pro práci s formátem (medialnym kontajnerom) Matroska, byl vydán ve verzi 95.0. Podpora přehrávání formátu Matroska míří do Firefoxu [Bug 1422891, Technický popis]. Přehrávání lze již testovat ve Firefoxu Nightly.
Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 211. sraz, který proběhne v pátek 19. září 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. Na srazu proběhne přednáška Jiřího Eischmanna o nové verzi prostředí GNOME 49. Nemáte-li možnost se zúčastnit osobně, přednáškový blok bude opět streamován živě na server VHSky.cz a následně i zpřístupněn záznam.
Microsoft se vyhnul pokutě od Evropské komise za zneužívání svého dominantního postavení na trhu v souvislosti s aplikací Teams. S komisí se dohodl na závazcích, které slíbil splnit. Unijní exekutivě se nelíbilo, že firma svazuje svůj nástroj pro chatování a videohovory Teams se sadou kancelářských programů Office. Microsoft nyní slíbil jasné oddělení aplikace od kancelářských nástrojů, jako jsou Word, Excel a Outlook. Na Microsoft si
… více »Samba (Wikipedie), svobodná implementace SMB a Active Directory, byla vydána ve verzi 4.23.0. Počínaje verzí Samba 4.23 jsou unixová rozšíření SMB3 ve výchozím nastavení povolena. Přidána byla podpora SMB3 přes QUIC. Nová utilita smb_prometheus_endpoint exportuje metriky ve formátu Prometheus.
Správcovský tým repozitáře F-Droid pro Android sdílí doporučení, jak řešit žádosti o odstranění nelegálního obsahu. Základem je mít nastavené formální procesy, vyhrazenou e-mailovou adresu a být transparentní. Zdůrazňují také důležitost volby jurisdikce (F-Droid je v Nizozemsku).
Ahojte. Mám taký problém. Mám súbor ktorý obsahuje cesty k rôznym súborom. a mam nejaku premennu (p) v ktorej je časť nejakej cesty. A potrebujem vymazať iba tu časť čo je uložená v premennej. pr.: p="/var/spool/ subor a.txt obsahuje: /usr/share/locale/%l/%N /var/spool/mail/$USER /var/lock/subsys/c ako z toho dostanem zmeneny subor ktory bude obsahovať: /usr/share/locale/%l/%N mail/$USER /var/lock/subsys/c ďakujem za každú odpoveď
Řešení dotazu:
sed -e "s#$p##" a.txt
Tedy výsledek na konzoli. Můžete přesměrovat do souboru (pokud má být výsledek uložen jinam) nebo sedy přidat sed -i -e "s#$p##" a.txt
(pokud chcete editovat ten soubor).
Zdravim.
Moze tam byt cokolvek, znak # je v tomto pripade len na oddelenie jednotlivych casti. Moze to byt aj:
sed -e "s/$p//" a.txt
sed -e "s%$p%%" a.txt
atd.
/
takto být nemůže protože byste se musel patlat s escapováním lomítek obsažených v cestě po expandování proměnné.
Osobně jsem uvykl většinově na #
, protože tam mívám neméně kolizí s řetězci, se kterými manipuluji. A protože se mi tam zrovna lomítka vyskytují běžně, #
vypadá hezky jinak, takže mi to přijde přehledné.
Zdravim.
Ale toto mu "vymaze" cokolvek, co obsahuje dany pattern.
Pokial ma ten subor daku formu (jedna cesta = jeden riadok), tak potom takto to maze len to co treba:
sed -e "s#^${p}/\{0,\}\$##g"
# - delimiter
^ - zaciatok riadku
$ - koniec riadku, v tomto pripade musi byt escapnuty pomocou \, lebo su pouzite dvojite uvodzovky, aby sme umoznili shellu vyhodnotit premennu p. Rovnako by sa pokusil bash (alebo iny aktualny shell) vyhodnit aj $ pre koniec riadku a je tu chyba. Preto to escapovanie.
\{0,\} - pocet vyskytov retazca, v tomto pripade 0 alebo viac. Cesta moze obsahovat asi neobmedzene pocet lomitok, ie. /var/spool je platny rovnako ako /var/spool///////////////////
Nemyslim si, ze je to idealne, lebo rovnako ako na konci, tak kdekolvek moze byt neobmedzeny? pocet lomitok. Nepredpokladam, ze niekto napise 100 lomitok na koniec cesty, ale jedno alebo ziadne je asi najcastejsia situacia. A samozrejme toto plati ak je v subore pre jeden riadok vzdy jedna cesta.
Farebne odlisit to mozes, ak to podporuje tvoj terminal, ale do textoveho suboru to neulozis farebne odlisene. Textovy subor nie je napr. doc z wordu.
Mozes aj takto:
COLOUR='echo -e \e[0;31m&\e[m'; sed -e "s#^${p}/\{0,\}\$#$($COLOUR)#g" a.txt
COLOUR - premenna obsahujuca prikaz s danou farbou, 0;31 je ANSI kod pre cervenu
& - je pre sed, kde bude zavolany tento prikaz a bude obsahovat nalez vzhladom na regularny vyraz
Inak plati vsetko to, co predtym uz bolo popisane.
\{0,\}
nefungovalo pro žádný nebo více výskytů, ale tradičně se v regulérním výrazu zapisuje (a mnohem častěji člověk potká) jako *
. ;)
* je pre ziadny alebo viac vyskytov hocakeho znaku, mne slo o / (lomitko). Keby tam bola *, tak by to nebolo to, co chcem. Samozrejme, medzicasom, ste poznamenali, ze zadanie je odlisne, ako som to zobral ja. A v tom pripade je tam aj ta * zbytocna.
A netreba mi skutocne vykat. ;)
* je pre ziadny alebo viac vyskytov hocakeho znaku, mne slo o / (lomitko). Keby tam bola *, tak by to nebolo to, co chcem. Samozrejme, medzicasom, ste poznamenali, ze zadanie je odlisne, ako som to zobral ja. A v tom pripade je tam aj ta * zbytocna.A, tady bude jádro pudla.
*
i \{0,\}
jsou opravdu totéž a váží se k libovolnému znaku nebo skupině, které bezprostředně následují.
Libovolný znak je .
, zatímco .*
je cokoliv v libovolném (i nulovém) množství a to se Vám zde zřejmě zamotalo. /\{0,\}
a /*
jsou synonyma. U*Xově pěkný příklad, dosažení stejného výsledku různými cestami.
A netreba mi skutocne vykat. ;)Pokud Vám to vyloženě nevadí, tak bych se ho podržel.
Tak to je parada. Dakujem. Funguje to samozrejme, ako ste povedali.;)
Ještě zde tedy poznámka. Vámi navržený regulérní výraz neodpovídá zadání. Schválně, jestli si toho všimnete. Z toho příkladu by to mohlo být zřejmé. I když v zásadě souhlas, psát co nejspecifičtěji, co chci, aby odpovídalo.sed -e "s#^${p}/\{0,\}\$##g"
Asi to mam.;)
... mam nejaku premennu (p) v ktorej je časť nejakej cesty ...
Takze v tomto pripade vase zadanie je spravne samozrejme. Len mi to nejak automaticky prislo nie najvhodnejsie, aby sa mazalo takymto sposobom. Pri obycajnom texto je to v poriadku, ale pri niecom, co je textom len pre sed, ale pre mna ako uzivatela to ma aj svoj druhotny vyznam, tak je to ponekud nepohodlne a moze viest k problemom.
<TAB>
, v []
jsou prostě znaky mezera, tabulátor a /
, lze rozšířit, ale tohle pokryje obvyklé možnosti):
s#\([ /]*\)$p\([ /]*\)#\1\2#g
Co nejpřesnější popis je opravdu dobrý přístup, ale hrozí opačná chyba, výraz neodpovídá ani tomu, čemu by měl.
Tiskni
Sdílej: