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 | Zajímavý software

    Na GOG.com běží Spring Sale. Při té příležitosti lze získat zdarma počítačovou hru Deep Sky Derelicts.

    Ladislav Hagara | Komentářů: 0
    dnes 14:22 | Nová verze

    Sound Open Firmware, projekt Linux Foundation, open source audio DSP firmware a SDK, byl vydán ve verzi 2.5.0. Přináší podporu platformy Mediatek mt8188 nebo nový audio modul ARIA (Automatic Regressive Input Amplifier Module).

    Ladislav Hagara | Komentářů: 0
    dnes 12:33 | Nová verze

    Byla vydána nová verze 5.8 programovacího jazyka Swift (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu. Ke stažení budou oficiální binární balíčky pro Ubuntu 18.04, Ubuntu 20.04, Ubuntu 22.04, CentOS 7, Amazon Linux 2 a Red Hat Universal Base Image 9.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Nová verze

    Byla vydána nová verze 1.77 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.77 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 3
    dnes 12:11 | Nová verze

    Byla vydána beta verze Ubuntu 23.04 s kódovým názvem Lunar Lobster. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 23.04 mělo vyjít 20. dubna 2023.

    Ladislav Hagara | Komentářů: 0
    včera 17:44 | Nová verze

    Linuxová distribuce OpenMandriva byla vydána ve verzi ROME 23.03. Název ROME říká, že se jedná se o průběžně aktualizovanou (rolling) edici. Stabilní edice nese název Rock, aktuálně OpenMandriva Lx 4.3 Dysprosium.

    Ladislav Hagara | Komentářů: 2
    včera 17:33 | Pozvánky

    Tento pátek od 14:00 proběhne v Brně na FI MUNI konference DevConf Mini. Na programu je celá řada zajímavých přednášek od testování releasů Fedory, přes super počítače nebo Big Data, až po závody autonomních aut. Konferenci bude možné sledovat i na online streamu.

    joejoe | Komentářů: 0
    včera 15:00 | Zajímavý článek

    Minulý týden proběhla hackerská soutěž Pwn2Own Vancouver 2023. Adobe Reader, Microsoft SharePoint, Oracle VirtualBox, Tesla, Ubuntu Desktop, Windows 11, macOS, Microsoft Teams, VMWare Workstation. Vše hacknuto. Synacktiv získal 530 000 dolarů a Teslu Model 3.

    Ladislav Hagara | Komentářů: 14
    včera 07:00 | Nová verze

    Byla vydána nová stabilní verze 3.5 svobodného 3D softwaru Blender. Přehled novinek i s náhledy v oznámení o vydání a na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 06:00 | Nová verze

    Po 5 měsících vývoje od vydání verze 6.1 byla vydána nová verze 6.2 svobodného open source redakčního systému WordPress. Kódové jméno Dolphy bylo vybráno na počest amerického jazzového altsaxofonisty, flétnisty a basklarinetisty Erica Dolphyho.

    Ladislav Hagara | Komentářů: 0
    Používáte WSL (Windows Subsystem for Linux)?
     (74%)
     (12%)
     (3%)
     (11%)
    Celkem 379 hlasů
     Komentářů: 7, poslední 28.3. 17:34
    Rozcestník


    Dotaz: jak z textu vypsat pouze cast

    17.8.2007 09:56 Jirka
    jak z textu vypsat pouze cast
    Přečteno: 335×
    Nazdarek, potrebuji zjistit aktualni pocet procesu, ten je v souboru /proc/loadavg (v tomto pripade je to 162)
    cat /proc/loadavg
    0.14 0.11 0.05 7/162 2692
    
    A ted otazka zni: jak to udelat co nejefektivneji, na jedinem radku? Zkousel jsem toto:
    cut -d' ' -f4 /proc/loadavg|cut -d'/' -f2
    162
    
    a toto:
    awk 'BEGIN {FS="[ /]"} {print $5}' /proc/loadavg
    162
    
    Porad se mi to nezda, existuje neco jednodussiho? Treba za pomoci regularniho vyrazu ...

    diky za rady!

    Odpovědi

    wolf09 avatar 17.8.2007 10:06 wolf09 | skóre: 30
    Rozbalit Rozbalit vše Re: jak z textu vypsat pouze cast
    a co jenom

    cut -d'/' -f2 /proc/loadavg

    Zkusili jste to vypnout a znovu zapnout ?
    17.8.2007 10:17 Jirka
    Rozbalit Rozbalit vše Re: jak z textu vypsat pouze cast
    cut -d'/' -f2 /proc/loadavg
    162 2692
    
    To neni presne co jsem chtel.
    wolf09 avatar 17.8.2007 10:42 wolf09 | skóre: 30
    Rozbalit Rozbalit vše Re: jak z textu vypsat pouze cast
    sed -e 's/.*\///' -e 's/ .*//' /proc/loadavg
    Zkusili jste to vypnout a znovu zapnout ?
    17.8.2007 10:47 Jirka
    Rozbalit Rozbalit vše Re: jak z textu vypsat pouze cast
    ANO, tusil jsem, ze se tam objevi sed. DIKY!
    17.8.2007 10:39 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: jak z textu vypsat pouze cast
    Můžu hádat? Ty chceš periodicky hlídat počet procesů a v případě, že se změní, tak ho vypsat:
    #!/usr/bin/python
    # -*- coding:utf-8 -*-
    import time
    
    old = 0
    while True:
        line = file('/proc/loadavg').readline()
        n = int(line.split()[3].split('/')[1])
        if old != n:
            print n
            old = n
        time.sleep(0.1)
    
    17.8.2007 10:50 Jirka
    Rozbalit Rozbalit vše Re: jak z textu vypsat pouze cast
    Prvni cast jsi uhadl presne a dokonce to souvisi i s Pythonem. Zkousim toto: Snadne sledovani systemu
    17.8.2007 15:11 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: jak z textu vypsat pouze cast
    Třeba normálně readem:
    IFS=" /" read x x x x procs x < /proc/loadavg && echo $procs
    nebo
    IFS="/" read x procs < /proc/loadavg && echo ${procs% *}
    17.8.2007 16:25 Jirka
    Rozbalit Rozbalit vše Re: jak z textu vypsat pouze cast
    ANO, ANO. Funguje a mozna tu bude jeste mene narocnejsi na zdroje nez sed! Diky!
    17.8.2007 16:17 Jirka
    Rozbalit Rozbalit vše Re: jak z textu vypsat pouze cast
    Jeste s vratim k puvodnimu dotazu. Udelal jsem si takovyto jednoduchy programek v Pythonu (rex.py):
    #!/usr/bin/python
    # prvni parametr je regularni vyraz
    # druhy parametr je soubor
    
    import sys, re
    
    x = sys.argv[1]
    f = open(sys.argv[2],'r')
    for r in f:
         m = re.search(x, r)
         if m:
              for g in m.groups():
                   print g,
              print
    f.close    
    
    Jak je patrne, probira soubor po radcich a vypisuje casti, ktere odpovidaji zadanemu regularnimu vyrazu. Takze vyse zmineny problem resim treba takto:
    ./rex.py ".+ .+ .+ \d+/(.+) \d+" /proc/loadavg
    162
    
    Neexistuje nejaka mala utilitka na takoveto veci?
    zoul avatar 17.8.2007 18:33 zoul | skóre: 43 | blog: | Boskovice
    Rozbalit Rozbalit vše Re: jak z textu vypsat pouze cast
    Jako na vyparsování regulárního výrazu ze souboru?

    $ time perl -ne 'print "$1\n" if m|/(\d+)|' /proc/loadavg
    162

    real   0m0.026s
    user   0m0.003s
    sys    0m0.007s
    zoul avatar 17.8.2007 18:45 zoul | skóre: 43 | blog: | Boskovice
    Rozbalit Rozbalit vše Re: jak z textu vypsat pouze cast
    …což jde ještě ogolfnout:

    perl -nle 'print $1 if m|/(\d+)|' /proc/loadavg

    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.