abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 23:44 | Nová verze

    Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.

    Ladislav Hagara | Komentářů: 0
    21.12. 05:00 | Nová verze

    Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 2
    21.12. 01:55 | Nová verze

    GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 0
    19.12. 17:22 | IT novinky

    Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.

    Ladislav Hagara | Komentářů: 14
    19.12. 17:00 | Komunita

    Nový CEO Mozilla Corporation Anthony Enzor-DeMeo tento týden prohlásil, že by se Firefox měl vyvinout v moderní AI prohlížeč. Po bouřlivých diskusích na redditu ujistil, že v nastavení Firefoxu bude existovat volba pro zakázání všech AI funkcí.

    Ladislav Hagara | Komentářů: 0
    19.12. 10:11 | IT novinky

    V pořadí šestou knihou autora Martina Malého, která vychází v Edici CZ.NIC, správce české národní domény, je titul Kity, bity, neurony. Kniha s podtitulem Moderní technologie pro hobby elektroniku přináší ucelený pohled na svět současných technologií a jejich praktické využití v domácích elektronických projektech. Tento knižní průvodce je ideální pro každého, kdo se chce podívat na současné trendy v oblasti hobby elektroniky, od

    … více »
    Ladislav Hagara | Komentářů: 8
    19.12. 03:11 | Komunita

    Linux Foundation zveřejnila Výroční zprávu za rok 2025 (pdf). Příjmy Linux Foundation byly 311 miliónů dolarů. Výdaje 285 miliónů dolarů. Na podporu linuxového jádra (Linux Kernel Project) šlo 8,4 miliónu dolarů. Linux Foundation podporuje téměř 1 500 open source projektů.

    Ladislav Hagara | Komentářů: 0
    19.12. 02:11 | Zajímavý článek

    Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.12.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    19.12. 02:00 | Nová verze

    OpenZFS (Wikipedie), tj. implementace souborového systému ZFS pro Linux a FreeBSD, byl vydán ve verzi 2.4.0.

    Ladislav Hagara | Komentářů: 0
    19.12. 01:00 | IT novinky

    Kriminalisté z NCTEKK společně s českými i zahraničními kolegy objasnili mimořádně rozsáhlou trestnou činnost z oblasti kybernetické kriminality. V rámci operací OCTOPUS a CONNECT ukončili činnost čtyř call center na Ukrajině. V prvním případě se jednalo o podvodné investice, v případě druhém o podvodné telefonáty, při kterých se zločinci vydávali za policisty a pod legendou napadeného bankovního účtu okrádali své oběti o vysoké finanční částky.

    Ladislav Hagara | Komentářů: 9
    Kdo vám letos nadělí dárek?
     (28%)
     (2%)
     (12%)
     (2%)
     (2%)
     (2%)
     (10%)
     (26%)
     (16%)
    Celkem 50 hlasů
     Komentářů: 16, poslední včera 23:13
    Rozcestník

    Dotaz: bash - hromadna uprava textu

    tomes.io avatar 17.7.2012 12:22 tomes.io | skóre: 12 | blog: tomesh
    bash - hromadna uprava textu
    Přečteno: 536×
    Ahoj,

    uz je to nejaky cas co jsem delal s regularnimi vyrazy.

    Mohl by mi nekdo poradit, jak co nejlepe dostat text, ktery je napsan na nekolik radku, mezi tagy, na jeden radek?

    Priklad vychoziho textu:
    <> aaasasdaasfddsfsdf <+>
    <> aaasasdaasfddsfsdf <+>
    
    <> aaasasdaasfdd
    sdsdsdsd
    sdsdsdsdsd
    sdsdsdsdsdsfsdf <+>
    
    Vyslednu text bych chtel v teto podobe:
    <> aaasasdaasfddsfsdf <+>
    <> aaasasdaasfddsfsdf <+>
    
    <> aaasasdaasfddsdsdsdsdsdsdsdsdsdsdsdsdsdsdsfsdf <+>
    
    
    Tedy, potrebuji takovu regularni vyraz, ktery by jednotlive vety mezi tagy a dal do jednoho radku. Potrebuji takto upravit hromadu textu pro snazsi kontrolu v diffu (bude snazsi nachazet a oznacovat chybne radky).

    Budu rad, pokud mi nekdo poradi prislusny regularni vyraz v sed nebo prikaz v awk.

    Vim, jak v awk odstranit vsechny znaky newline, ale mezi tagy mi to nejde. Zatim jsem v awk dospel k tomuto prikazu (ktery ale nedela pozadovane). Mozna by ho stacilo jen nejak lehce upravit?
    cat text1 | awk 'BEGIN{RS="<+>"}{printf "%s", $0}'
    

    Řešení dotazu:


    Odpovědi

    17.7.2012 13:12 iKoulee | skóre: 19
    Rozbalit Rozbalit vše Re: bash - hromadna uprava textu
    nesnazil bych se odstranovat jen nektere znaky noveho radku, ale odstranil bych vsechny a pak pridal nove, tam kam potrebuji, treba nejak takhle:

    sed -e ':a;N;$!ba;s/\n//g' -e 's/\(<+>\)/\1\n/g'
    
    Even if you fall on your face, you’re still moving forward
    tomes.io avatar 17.7.2012 15:54 tomes.io | skóre: 12 | blog: tomesh
    Rozbalit Rozbalit vše Re: bash - hromadna uprava textu
    Diky moc, to je presne co jsem potreboval. Akorat bych jeste poprosil o upravu pro klasicky tagovy format sipky se zpetnym lomitkem

    </s>

    POkud tento tag pouziju misto <+> tak mi bash vyhodi hlasku:
    sed: -e expression #2, char 12: unknown option to `s'
    Hadam, ze se v regularnim vyrazu musi nejak vyjadrit, ze tag neni specialni znacka pro vyraz, nejak to odblokovat. Zkousel jsem to ruzne obehnat zpetnyma lomitkama, ale furt to nejde.
    17.7.2012 16:36 iKoulee | skóre: 19
    Rozbalit Rozbalit vše Re: bash - hromadna uprava textu
    imo je to lomitko v tagu normalni a jedinne co potrebujete vyescapovat je prave to lomitko a to zpetnym lomitkem :-)
    sed -e ':a;N;$!ba;s/\n//g' -e 's/\(<\/s>\)/\1\n/g'
    
    Even if you fall on your face, you’re still moving forward
    tomes.io avatar 18.7.2012 08:23 tomes.io | skóre: 12 | blog: tomesh
    Rozbalit Rozbalit vše Re: bash - hromadna uprava textu
    Diky, tohle tak nejak splnilo co jsem potreboval :)
    tomes.io avatar 18.7.2012 09:17 tomes.io | skóre: 12 | blog: tomesh
    Rozbalit Rozbalit vše Re: bash - hromadna uprava textu
    Jeste by tu bylo jedno reseni s awk:
    cat out.txt |awk 'BEGIN{tmp=""} $0 ~ /.*<\/s>.*/{print tmp $0;tmp="";} $0 !~ /.*<\/s>.*/{tmp=tmp $0}'
    xkucf03 avatar 17.7.2012 22:55 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: bash - hromadna uprava textu
    Pokud ti jde o porovnávání, tak doporučuji načíst jako DOM a pak zase serializovat (uložit jako XML) s tím, že se to uloží stejným způsobem. Případně to můžeš prohnat přes normalize-space() v XSLT.

    Nebo použít rovnou nějaký nástroj na porovnávání XML.

    A ještě pozor na to odstraňování mezer – z těch konců řádků by se měly stát mezery, neměly by úplně zmizet.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.