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 05:55 | Nová verze

    Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).

    Ladislav Hagara | Komentářů: 1
    dnes 05:11 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).

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

    Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    včera 19:33 | Nová verze

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | IT novinky

    Samsung představil svůj nejnovější chytrý telefon Galaxy Z TriFold (YouTube). Skládačka se nerozkládá jednou, ale hned dvakrát, a nabízí displej s úhlopříčkou 10 palců. V České republice nebude tento model dostupný.

    Ladislav Hagara | Komentářů: 2
    včera 12:33 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.11.1. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 1
    včera 04:00 | Nová verze

    Byla vydána nová verze 15.0 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 6
    včera 03:00 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.

    Ladislav Hagara | Komentářů: 0
    včera 00:33 | IT novinky Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (15%)
     (25%)
     (16%)
     (18%)
    Celkem 426 hlasů
     Komentářů: 18, poslední včera 18:34
    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.