Jakub Jelínek oznámil vydání verze 15.1 (15.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 15. 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.
Byly vyhlášeny výsledky letošní volby vedoucího projektu Debian (DPL, Wikipedie). Staronovým vedoucím zůstává Andreas Tille.
Jason Citron končí jako CEO Discordu. Od pondělí 28. dubna nastupuje nový CEO Humam Sakhnini, bývalý CSO Activision Blizzard.
Článek na Libre Arts představuje baskytarový multiefekt Anagram od společnosti Darkglass Electronics. S Linuxem uvnitř (licence, GitHub).
Městský soud v Praze vyhlásil rozsudek, který vyhověl žalobě novináře Jana Cibulky, který s podporou spolku IuRe (Iuridicum Remedium) požadoval omluvu od státu za to, že česká legislativa nařizuje operátorům uchovávat metadata o elektronické komunikaci. To je přitom v rozporu s právem. Stát se musí novináři omluvit a zaplatit náklady řízení. Především je ale součástí přelomové rozhodnutí o nelegálnosti shromažďování dat a o
… více »Americké technologické firmy Apple a Meta Platforms porušily pravidla na ochranu unijního trhu, uvedla včera Evropská komise (EK). Firmám proto vyměřila pokutu – Applu 500 milionů eur (12,5 miliardy Kč) a Metě 200 milionů eur (pět miliard Kč). Komise to oznámila v tiskové zprávě. Jde o první pokuty, které souvisejí s unijním nařízením o digitálních trzích (DMA). „Evropská komise zjistila, že Apple porušil povinnost vyplývající z nařízení
… více »Americká společnost OpenAI, která stojí za chatovacím robotem ChatGPT, by měla zájem o webový prohlížeč Chrome, pokud by jeho současný majitel, společnost Google, byl donucen ho prodat. Při slyšení u antimonopolního soudu ve Washingtonu to řekl šéf produktové divize ChatGPT Nick Turley.
Po roce vývoje od vydání verze 1.26.0 byla vydána nová stabilní verze 1.28.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.28.
Byla vydána nová verze 10.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 211 vývojářů. Provedeno bylo více než 2 800 commitů. Přehled úprav a nových vlastností v seznamu změn.
42 svobodných a otevřených projektů získalo finanční podporu od NLnet Foundation (Wikipedie).
Dobrý den,
mám dotaz ohledně vyhledání slov v různých textových dokumentech jedné složky. Lze sestavit příkaz nebo i více příkazů (.sh), které by dokázali vyhledat všechny textové soubory ve složce a ve všech nahradit určité slovo jiným slovem (jinými slovy), ale pozor to slovo/ta slova by bylo z jiného textového souboru?O co mně přesně jde:
Kdybych měl více textových souborů s jedním stejným slovem (jinak pojemenovaný, ale stejný "mustr") a toto slovo bych chtěl v každém souboru zvlášť nahradit jiným slovem z druhého textového souboru, tak jak na to? Jelikož je to krkolomné, tak uvedu příklad:
***
Např.: V 5 souborech je stejné slovo "word". Toto slovo bych chtěl nahradit v každém souboru zvlášť různými slovy z šestého souboru, kde by byla uložena takto:
jedna
dva
tři
čtyři
pět
Výsledek:
// Původních 5 souborů tedy: ..... word .....
// Upravené:
1. soubor = .... jedna ....
2. soubor = .... dva ....
....
***
Prozatím jsem částečně nalezl a upravil tento příkaz, který funguje na nalezení a nahrazení jednoho slova přímo zadaným jedním slovem (textem), ale jak jsem psal, tak bych ho potřeboval "upravit"/nahradit/...
find /cesta/do/adresáře -type f -print0 | xargs -0 sed -i 's|hledaný text|nový text|g'
Varianty, které nefungují (prozatím jsem zkoušel jen nahradit 1 slovo 1 slovem z druhého souboru):
// "file" - měl být soubor ten soubor s náhradním slovem
// "22222" - jsem chtěl nahradit
find ./ -type f -print0 | xargs -0 sed -i 's|22222|$(sed -n 1p file)|g'
grep -rl '22222' ./ | xargs sed -i 's/22222/$(sed -n 1p file)/g'
sed -e "s/22222/$(sed -n 1p file)/" soubor.txt
Šlo by to nějak? Nebo si to už musím naprogramovat např. v C...? Sám bych byl raději, kdyby šel sestavit nějaký příkaz či script.
Předem Vám děkuji za Vaše rady!
S pozrdavem a přáním pěkného zbytku týdne
Jirka
Řešení dotazu:
i=1 word="word" for f in soubory; do tgt=`head -n $i šestý | tail -n 1` sed -ire "s/$word/$tgt/g" "$f" i=$(( $i + 1 )) done(nezkoušeno)
#!/usr/bin/python import os, fileinput, re zdroj = open('/tmp/siesty.txt') for (koren, adresare, subory) in os.walk('adresar_so_subormi'): for subor in subory: print "menim",subor nahrada = zdroj.readline().rstrip() print "nahradim 'word' za",nahrada for riadok in fileinput.FileInput(os.path.join(koren,subor), inplace=1): print re.sub('word',nahrada, riadok),
Tiskni
Sdílej: