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 17:33 | Bezpečnostní upozornění

    Byla vydána nová verze 25.12.6 linuxové distribuce primárně určené pro routery a vestavěné systémy OpenWrt (Wikipedie). Opravena je řada zranitelností v základních síťových službách, které jsou ve výchozím nastavení aktivní a které lze zneužít na dálku. Důrazně je doporučena aktualizace.

    Ladislav Hagara | Komentářů: 0
    dnes 16:00 | Zajímavý projekt

    Český projekt mapSTL.com promění vybrané místo na světě ve 3D mapu pro tisk, včetně měst, kopců a hor. Vytištěnou mapu můžete také pověsit na zeď jako obraz. STL i barevný 3MF stáhnete zdarma a bez registrace. Vyzkoušejte své oblíbené místo a podělte se o zpětnou vazbu.

    cvp | Komentářů: 1
    dnes 10:22 | Pozvánky

    Byl zveřejněn průběžně aktualizovaný program konference OpenAlt 2026 o otevřeném softwaru a datech, IT bezpečnosti, DIY a IoT. Konference proběhne o víkendu 7. a 8. listopadu v prostorách FIT VUT v Brně. Vstup je zdarma.

    Ladislav Hagara | Komentářů: 0
    dnes 08:08 | Zajímavý článek
    Nepálský ISP WorldLink Communications popisuje sedm let zavádění IPv6. Dnes provozuje přes milion IPoE přípojek, všechny s podporou IPv6, a přibližně 70 % provozu přenáší přes IPv6.… více »
    vencour | Komentářů: 1
    dnes 02:11 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 7.2 oznámil Linus Torvalds vydání Linuxu 7.3. Podrobný přehled novinek a vylepšení na Linux Kernel Newbies nebo LWN.net: první a druhá polovina začleňovacího okna.

    Ladislav Hagara | Komentářů: 0
    včera 23:39 | Bezpečnostní upozornění
    Zjištěna zranitelnost v kernelu projevující se při virtualizaci. Nejde tedy o chybu samotného KVM ani konkrétního poskytovatele cloudu, ale o problém v linuxovém zpracování IPv4 paketů, který se může týkat různých virtualizačních a sandboxových prostředí. Více např. na hacker.news - Critical PwnEscape Linux Kernel Vulnerability Lets Guest VMs Read Host Memory. Aktualizace jsou k dispozici.
    vencour | Komentářů: 0
    včera 23:38 | Bezpečnostní upozornění
    Malware napsaný v Go se šíří mezi linuxovými systémy, pokouší se získávat SSH klíče a využívá kompromitované stroje pro těžbu kryptoměn. Autor použil FakeNet-NG a Wireshark k analýze síťové komunikace. Popsal také indikátory kompromitace a možnosti obrany. Zajímavé je propojení SSH bezpečnosti, analýzy síťového provozu a detekce prostřednictvím SIEM. více
    vencour | Komentářů: 0
    16.10. 15:55 | Nová verze

    Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 9.00. S podporou architektury AArch64 (ARM64).

    Ladislav Hagara | Komentářů: 0
    16.10. 03:44 | IT novinky

    Společnost Fairphone stojící za stejnojmennými mobilními telefony představila (pdf) bezdrátová špuntová sluchátka Fairbuds 2. Opravitelná, s vyměnitelnými bateriemi a tříletou zárukou. Cena 119 eur.

    Ladislav Hagara | Komentářů: 17
    16.10. 03:33 | Pozvánky

    O víkendu 17. a 18. října lze na brněnském výstavišti navštívit s jednou vstupenkou dvě akce: Maker Faire Brno, festival inovací, kreativity a kutilství, a GameDev Connect, akci určenou pro všechny současné a hlavně budoucí herní vývojáře.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (30%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2870 hlasů
     Komentářů: 32, poslední 11.10. 17:02
    Rozcestník

    Dotaz: Příkaz/script - Vyhledání a nahrazení slov (sed, grep, find)

    9.9.2015 23:58 Mr. Mrkev
    Příkaz/script - Vyhledání a nahrazení slov (sed, grep, find)
    Přečteno: 744×

    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:


    Odpovědi

    Jendа avatar 10.9.2015 05:07 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Příkaz/script - Vyhledání a nahrazení slov (sed, grep, find)
    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)
    11.9.2015 10:40 Mr. Mrkev
    Rozbalit Rozbalit vše Re: Příkaz/script - Vyhledání a nahrazení slov (sed, grep, find)
    Děkuji, s mírnou úpravou jsem hledal přesně toto! Využívám a budu využívat dále + nabalovat další...
    jose17 avatar 10.9.2015 12:17 jose17 | skóre: 44 | blog: Joseho_blog | Bratislava
    Rozbalit Rozbalit vše Re: Příkaz/script - Vyhledání a nahrazení slov (sed, grep, find)
    v pythone trebars takto:
    #!/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),
    
    Ja vim, on vi, ty nano!
    11.9.2015 10:41 Mr. Mrkev
    Rozbalit Rozbalit vše Re: Příkaz/script - Vyhledání a nahrazení slov (sed, grep, find)
    Také ti děkuji, ač využiju/vám předchozí řešení, tak tvé si také uložím. Třeba se časem bude hodit.

    Založit nové vlákno • Nahoru

    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.