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í
×
    dnes 04:11 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 6.17 oznámil Linus Torvalds vydání Linuxu 6.18. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies. Vypíchnout lze například podporu protokolu PSP (PSP Security Protocol, PSP encryption of TCP connections).

    Ladislav Hagara | Komentářů: 0
    dnes 03:55 | Nová verze

    Byla vydána nová stabilní verze 25.11 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Xantusia. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.

    Ladislav Hagara | Komentářů: 0
    dnes 03:22 | Komunita

    Richard Hughes na Mastodonu oznámil, že se společnost Framework Computer stala sponzorem služby LVFS (Linux Vendor Firmware Service) umožňující aktualizovat firmware zařízení na počítačích s Linuxem.

    Ladislav Hagara | Komentářů: 0
    28.11. 18:55 | Humor

    Jak na webu co nejšíleněji zadávat datum? Jak to uživatelům co nejvíce znepříjemnit? V Bad UX World Cup 2025 (YouTube) se vybíraly ty nejšílenější UX návrhy. Vítězným návrhem se stal Perfect Date.

    Ladislav Hagara | Komentářů: 11
    28.11. 12:44 | Zajímavý software

    Společnost Collabora vydala (YouTube) na LibreOffice založený desktopový kancelářský balík Collabora Office. Pro Windows, macOS a Linux. Se stejným uživatelským rozhraním jako Collabora Online. Svůj desktopový kancelářský balík s rozhraním LibreOffice pojmenovala Collabora Office Classic.

    Ladislav Hagara | Komentářů: 12
    28.11. 12:00 | Nová verze

    Glen MacArthur vydal AV Linux (AVL) a MX Moksha (MXM) 25. S linuxovým jádrem Liquorix. AV Linux (Wikipedie) je linuxová distribuce optimalizována pro tvůrce audio a video obsahu. Nejnovější AV Linux vychází z MX Linuxu 25 a Debianu 13 Trixie. AV Linux přichází s desktopovým prostředím Enlightenment 0.27.1 a MX Moksha s prostředím Moksha 0.4.1 (fork Enlightenmentu).

    Ladislav Hagara | Komentářů: 0
    27.11. 17:55 | Nová verze

    Ubuntu pro testování nových verzí vydává měsíční snapshoty. Dnes vyšel 1. snapshot Ubuntu 26.04 LTS (Resolute Raccoon).

    Ladislav Hagara | Komentářů: 0
    27.11. 14:33 | IT novinky

    Zástupci členských států EU se včera shodli na návrhu, který má bojovat proti šíření materiálů na internetu zobrazujících sexuální zneužívání dětí. Nařízení známé pod zkratkou CSAM a přezdívané chat control mělo množství kritiků a dlouho nebyla pro jeho schválení dostatečná podpora. Pro schválení byla potřeba kvalifikovaná většina a dánské předsednictví v Radě EU se snažilo dosáhnout kompromisu. Návrh nakonec po dlouhých týdnech

    … více »
    Ladislav Hagara | Komentářů: 15
    27.11. 12:22 | Zajímavý software

    Britské herní studio Facepunch stojící za počítačovými hrami Garry's Mod a Rust uvolnilo svůj herní engine s&box (Wikipedie) jako open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT. Herní engine s&box je postavený nad proprietárním herním enginem Source 2 od společnosti Valve.

    Ladislav Hagara | Komentářů: 1
    27.11. 04:55 | Komunita

    Vývoj programovacího jazyka Zig byl přesunut z GitHubu na Codeberg. Sponzoring na Every.

    Ladislav Hagara | Komentářů: 7
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (16%)
     (24%)
     (16%)
     (18%)
    Celkem 418 hlasů
     Komentářů: 17, poslední 19.11. 21:57
    Rozcestník

    Dotaz: zjisteni a nahrada textu v bash

    16.11.2009 11:39 nazdarek
    zjisteni a nahrada textu v bash
    Přečteno: 286×
    Ahoj, rad bych pres bash zjistil ,zda je v smb.conf nadefinovane urcite zdileni a pokud ano , tak jej zmenil za jine...

    hledam toto: [test] path = /store1/test public = True writable = True browsable = False force user = root directory mask = 0770 create mask = 0770

    nahrazuji timto:

    [store2] path = /store2 public = True writable = False browsable = True force user = root directory mask = 0700 create mask = 0700

    Jak na to v bashi? nazdarek

    Odpovědi

    16.11.2009 11:55 l4m4
    Rozbalit Rozbalit vše Re: zjisteni a nahrada textu v bash
    Pokud to chceš opravdu psát v bashi, tedy nástroji zcela nevhodném pro daný účel, tak to asi děláš proto, že tě to baví, a v tom případě si to napiš, v bash(1) je vše potřebné, v Advanced Bash Scripting Guide pak nějaké hinty a příklady.

    Pokud jsi ochoten připustit pro dosažení cíle použití i jiných programů, které z toho shellu spustíš, tak ksakru nepiš, že to má být v bashi. Co toto je za zlozvyk, že všichni píší, že něco chctějí vyřešit v bashi, když ve skutečnosti chtějí napsat skript (klidne spouštějící jiné programy), který problém řeší.
    #!/bin/bash
    perl -0777 -i -ple 's#\[test\]\s*path\s*=\s*/store1/test\s*\n\s*public\s*=\s*True writable...#[store2] path = /store2\n...#s' smb.conf
    
    Regulární výraz nepíšu celý, protože je pekelně dlouhý, ale doplníš ho podle vzoru už snadno (\n je konec řádku, \s* libovolné množství bílých znaků, [ a ] je zapotřebí backslashovat).
    nettezzaumana avatar 18.11.2009 14:41 nettezzaumana | skóre: 3
    Rozbalit Rozbalit vše Re: zjisteni a nahrada textu v bash
    $_ = do {local $/; <>; }; ## nacteme obsah souboru jako scalar
    do {
        ## cestu nahradime natvrdo, nepredpokladam, ze to tam bude vickrat
        s@/mnt/data/Sun@/foo@;
    
        ## v sekci [Sun] nahradime pozadovany vyraz, v tomto pripade "read only = .*"
        ## ze se to provede jen v te sekci je dano pomoci ".[^[]*" ..
        s@(\[Sun\].[^[]*read only\s*=\s*).[^\n]*@$1blah@s;
    
    } if qq/[Sun]/; ## provede se, pokud soubor obsahuje sekci [Sun] v tomto pripade
    print
    nettezzaumana avatar 18.11.2009 15:14 nettezzaumana | skóre: 3
    Rozbalit Rozbalit vše Re: zjisteni a nahrada textu v bash
    sorry, a nebo jeste lepe a jednoduseji:
    ## nacteme do $_ obsah smb.conf
    $_ = do {local $/; <>; };
    
    ## jednoduse zmenime celou sekci [Sun] za obsah souboru /etc/passwd
    s@\n\[Sun\]\n.[^[]*@`cat /etc/passwd`@se;
    print
    

    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.