Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.
Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].
V lednu byl otevřen editor kódů Zed od autorů editoru Atom a Tree-sitter. Tenkrát běžel pouze na macOS. Byl napevno svázán s Metalem. Situace se ale postupně mění. V aktuálním příspěvku Kdy Zed na Linuxu? na blogu Zedu vývojáři popisují aktuální stav. Blíží se alfa verze.
O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.
Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.
Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).
Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.
Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.
Dobry den.
Existuje nejaky program, ktery udela statistiku jednotlivych znaku v souboru?
Chtel bych vedet, ze jake znaky jsou v danem souboru... muze se zdat, ze je to blbost, ale vygenerovany soubor z nejake aplikace muze obsahovat nulovy byte, form feed, vert. tabulator... atd. Tedy mi jde hlavne o prvnich 32 ridicich znaku v ASCII...
Program by mohl vypsat, ze kolikrat obsahuje soubor ridici znaky, pripadne na ktere pozici se nachazi jako prvni. Mate zkusenost s timto problemem?
Dekuji.
Fajn, presne jsem si myslel na takovou vec... :)
Kdy bude zintegrovany do coreutils Linuxu? Protoze je uzitecny...
Kdyz muzu neco doporucit: mohl bys napsat do vystupu jmeno tech ridicich znaku 0..31
Kdyz program to umi, tak se omlouvam, ale nenasel jsem.
Dik.
od -An -a subor |sed -r 's/^ *//; s/[ ]+/\n/g' | sort | uniq -c
Tiez funguje...
Od "od" by som to neocakaval...
Este by som mal nejake otazky k tomu...
1. Ako by som vymenil 12345-ty bajt v subore na iny bajt (zadany najlepsie hexadecimalne, napr. 0x0a)?
2. Ako by som vymazal 12345-ty bajt v subore? Ostatne bajty zostanu, teda subor bude o 1bajt mensi.
Dakujem.
sed 's/./&\n/g' subor | sed -n ' /^$/b print H $b print d :print x s/\n//g p d 'Toto rozoberie subor na znaky a zase ho posklada (zbiera znaky az dokym nepride \n; vtedy ich vycisti, vypise a zase znova; posledny riadok ma troska specialne zachadzanie, pretoze nemusi koncit \n). Medzi tie 2 sedy uz mozes zaradit cokolvek, napr. 3. sed, ktory spravi co chces. Napr: sed 12345d #vymaze 12345. riadok = 12345. byte sed '12345s/.*/x/' #zmeni 12345. znak na "x", akceptuje aj \n, \t, \xa,...
No to je uz celkom brutalne riesenie...
Teraz menit byte uz viem cez midnight commander -> F3 (View) -> F4 (Hex) -> F2 (Edit)...
Zbyvaju: pridanie za (pred?) dany byte a odstranenie daneho bytu.
Mozno ten "xxd" to vie -- skusim to. Ale ak vie niekto nech napise. Dakujem.
Milý Tomáši,
myslím, že nebudu sám, koho by zajímalo, na co takový program potřebuješ. Jeho napsání v C, Javě, nebo jakémkoli jiném použitelném jazyce by nemělo být tak složité. Strýček Google totiž prozradí, že podobně záhadné dotazy už tu máš minimálně dva (první, druhý). Jak tu již jednou padlo, smrdí to semestrálku...
Nerad bych Ti křivdil. Prozradíš tedy, k čemu je takový program dobrý?
S pozdravem,
Radek
No, ja jsem si myslel, ze toto forum neni o sikane.
Jake zahadne dotazy?!
ad "ls" -- ja si myslim, ze jsem opravnene ocekaval od programu na vypis obsahu adresare to, ze mi umi pripravit vsechny soubory rekurzivne vcetne cesty.
ad "column" -- o tomto programu jsem nevedel, dostal jsem odpoved
A v zadnem pripade nemam tyhle veci do skoly. A i kdybych mel, tak co? Kdyz nechces, tak nepomuzes, a hotovo. Ale jak je videt: na kritiku mas energiu.
A k tomuto: mas dokument, jednak ve formate Word, a jednak PDF. Jak jich porovnas (zda jsou vubec rozdily, ktery je starsi dle informace, atd...)
Vyexportoval jsem do txt oboje a pomoci "diff" jsem porovnaval modifikovane verze. Je tam dost rozdilu, ale hlavne kvuli ridicich znaku...
Proto je treba odstranit ^L znaky a podobne. Nebo menit na novy radek -- podle potreby.
Vec naco se ptam, je vlastne nejobecnejsi textovy editor (menit, smazat, pridat byte na danou pozici)... To muze hodit kdykoliv.
A jeste jedna vec: nejsem nejaky obrovsky expert na shell, ale podobne utoky, ze "k cemu je dobry" jsou celkem zbytecne... Kdyz jsem byl uplne zacatecnik a spustil jsem program "yes", tak taky jsem se ptal "k cemu k..rva tento program je dobry"... ted uz vim.
Zdravím, na účely porovnávání textů používám osobně:
Funguje to velmi rychle, i na textech v utf8, sim_test je v balíku similarity-tester v debianu. Ještě jsem pokusně zbastlil porovnávání všech dvojic text pomocí python-levenshtein modulu, ale to znak po znaku, výrazně pomalejší (všechny páry) a výsledky stejné.
Dobrá, věřím Ti. Přitom není pravda, že bych nechtěl pomoct.
Jen je někdy rychlejší, pokud se zeptáš na konkrétní problém přímo -- viz elegantní rada od vencase. Ne snad, že by Tě do uvádění podrobností o problému někdo nutil; jen se pak nezlob za podobné dotazy.
A pokud by tohle byl úkol do školy, tak je IMHO mnohem lepší odkázat na dobrý a rychlý tutorial než úlohu za jiného vyřešit. Mé oblíbené jsou bash, sed one-liners, nebo C a C++.
Tohle:
#!/usr/bin/python import sys, curses.ascii counts = {} for pos, c in enumerate(sys.stdin.read()): if c > ' ': continue try: counts[c][1] += 1 except KeyError: counts[c] = [pos, 1] counts_list = counts.items() def deco(x): return x[1][1] counts_list.sort(key = deco) for c, pos_count in counts_list: pos, count = pos_count print count, '%06x' %pos, curses.ascii.controlnames[ord(c)]
Vypíše statistiku řídících znaků (tj. 0 až 32), ostatní přeskakuje. Výstup je setříděný podle počtu, obsahuje první pozici výskytu (hexadecimálně) a název řídícího znaku. Binárku to zpracuje asi desetkrát rychleji než to řešení v shellu, ale určitě mnohem pomaleji než to v c++.
Ani jsem se nesnažil šetřit paměť…
Tiskni Sdílej: