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

    Zero Day Initiative zveřejnila informace o 6 bezpečnostních chybách (1, 2, 3, 4, 5, 6) v MTA Exim. Nejvážnější z nich CVE-2023-42115 má CVSS 9.8. Na opravě chyb se pracuje.

    Ladislav Hagara | Komentářů: 6
    dnes 16:33 | Bezpečnostní upozornění

    Knihovna libvpx byla vydána ve verzi 1.13.1. Řešena je kritická bezpečnostní chyba CVE-2023-5217 (heap buffer overflow in vp8 encoding). Chyba je již opravena také v Chrome / Chromium 117.0.5938.132 a Firefoxu 118.0.1.

    Ladislav Hagara | Komentářů: 0
    včera 23:55 | Nová verze

    Balíček kmod s nástroji pro práci s linuxovými moduly byl vydán ve verzi 31. Nově umí modprobe zavést modul nacházející se v libovolném adresáři (# modprobe ./drivers/gpu/drm/i915/i915.ko).

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

    Adventura Trüberbrook je na portále GOG.com zdarma, akce trvá do 2. října.

    Fluttershy, yay! | Komentářů: 0
    včera 12:44 | Nová verze

    Sound Open Firmware, projekt Linux Foundation, open source audio DSP firmware a SDK, byl vydán ve verzi 2.7.0. Z novinek lze vypíchnout podporu platformy AMD Van Gogh.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Komunita

    Richard Stallman v den oslav 40. výročí GNU oznámil, že má rakovinu (YouTube).

    Ladislav Hagara | Komentářů: 39
    včera 08:00 | Zajímavý projekt

    DIY trackball Ploopy novou variantu Adept, na rozdíl od předchozích používá 44mm kouli, má symetrický tvar a šest tlačítek, snímač zůstává PMW-3360, novinkou je použití Raspberry Pi Pico, na kterém běží firmware QMK s podporou grafické konfigurační aplikace VIA. Předobjednávky jsou otevřeny za ceny 80-105 CAD.

    Fluttershy, yay! | Komentářů: 0
    28.9. 15:22 | IT novinky

    Probíhá Meta Connect 2023. Společnost Meta představuje své novinky v oblasti AI a virtuální, smíšené a rozšířené reality. Představeny byly nové chytré brýle Ray-Ban | Meta a headset Meta Quest 3.

    Ladislav Hagara | Komentářů: 0
    28.9. 12:00 | IT novinky

    Eben Upton oficiálně představil (YouTube) nové Raspberry Pi 5 (YouTube). Je více než 2x výkonnější než jeho předchůdce, model 4B.

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

    Byl vydán (YouTube) Counter-Strike 2. Nativně také pro Linux. Jedná se o největší technologický skok v historii této populární herní série.

    Ladislav Hagara | Komentářů: 13
    Knihy s linuxovou tematikou
     (19%)
     (15%)
     (51%)
     (27%)
    Celkem 280 hlasů
     Komentářů: 11, poslední 17.9. 19:19
    Rozcestník

    Dotaz: bash - vyhledání výrazu v řetězci

    29.10.2013 12:02 Gencast
    bash - vyhledání výrazu v řetězci
    Přečteno: 440×
    Ahoj, potřeboval bych poradit jak z řetězci vyhledat výraz např. seconds a přečíst hodnotu před tímto výrazem. Příkaz AWK , protože se řetězec může mít proměnlivou délku. Díky


    Řešení dotazu:


    Odpovědi

    29.10.2013 16:14 NN
    Rozbalit Rozbalit vše Re: bash - vyhledání výrazu v řetězci
    Sed, protoze I dont care:
    'This homework took 300 seconds, not less.' | sed 's/^\(.*\)\(seconds.*\)/\1/'
    29.10.2013 16:51 Chulda
    Rozbalit Rozbalit vše Re: bash - vyhledání výrazu v řetězci
    jenže pokud to řetězec neobsahuje, tak jej vypíše
    echo 'This homework took 300 secondxs, not less.' | sed 's/^\(.*\)\(seconds.*\)/\1/'
    This homework took 300 secondxs, not less.
    
    takže správně je to takto:
    echo 'This homework took 300 seconds, not less.' | sed -n 's/^\(.*\)\(seconds.*\)/\1/p'
    This homework took 300 
    echo 'This homework took 300 secondxs, not less.' | sed -n 's/^\(.*\)\(seconds.*\)/\1/p'
    
    29.10.2013 17:11 ss
    Rozbalit Rozbalit vše Re: bash - vyhledání výrazu v řetězci
    Este lepsie by malo byt

    echo -e 'Begin\nThis homework took 300 seconds, not less.\nEnd' | sed -n '/seconds/{s/^\(.*\)\(seconds.*\)/\1/p;q};p'
    29.10.2013 17:16 Kit
    Rozbalit Rozbalit vše Re: bash - vyhledání výrazu v řetězci
    Mně vychází spíš tato šílenost:
    sed -n 's/^.*[^0-9]\([0-9]\+\)\s*seconds.*$/\1/p'
    Předpokládám, že výsledkem má být jen to číslo.
    29.10.2013 20:17 gencas
    Rozbalit Rozbalit vše Re: bash - vyhledání výrazu v řetězci
    Ano, výsledkem mělo být jen číslo , které pak nacpu do někalé proměné.

    Díky za pomoc , skvěle to funguje !
    Řešení 1× (Ash)
    29.10.2013 16:35 jef
    Rozbalit Rozbalit vše Re: bash - vyhledání výrazu v řetězci
    treba takto:
    
    a="111 seconds"
    [[ "$a" =~ ([0-9]+)[[:blank:]]*seconds ]]
    echo ${BASH_REMATCH[1]}
    
    29.10.2013 20:18 gencas
    Rozbalit Rozbalit vše Re: bash - vyhledání výrazu v řetězci
    Díky za pomoc, toto taky skvěle funguje.
    29.10.2013 17:46 loki
    Rozbalit Rozbalit vše Re: bash - vyhledání výrazu v řetězci
    Osobne nejsem prilis velkym priznivcem sedu, ale naopak jsem priznivcem awk. Zde je jednoduchy skript, ktery snad dela to, co chcete:
    #!/bin/bash
    
    echo -ne "raz dva 30 seconds\ntri ctyri osm padesat\nx y z 54 seconds\n" | \
    awk '{for(i = 2; i <= NF; i++) if ($(i) == "seconds") print $(i-1);}'
    
    29.10.2013 20:20 gencas
    Rozbalit Rozbalit vše Re: bash - vyhledání výrazu v řetězci
    Díky , že to půjde udělat s AWK jsem ani netušil. Skvělé.

    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.