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 19:11 | IT novinky

    Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.

    Ladislav Hagara | Komentářů: 0
    dnes 11:22 | Zajímavý projekt

    Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.

    Ladislav Hagara | Komentářů: 0
    dnes 09:11 | Bezpečnostní upozornění

    Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.

    Ladislav Hagara | Komentářů: 0
    včera 20:00 | Komunita

    V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.

    Ladislav Hagara | Komentářů: 1
    včera 19:22 | IT novinky

    Oficiální ceny Raspberry Pi Compute Modulů 4 klesly o 5 dolarů (4 GB varianty), respektive o 10 dolarů (8 GB varianty).

    Ladislav Hagara | Komentářů: 0
    30.4. 22:33 | Nová verze

    Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.

    Ladislav Hagara | Komentářů: 0
    30.4. 17:44 | Zajímavý článek

    Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.

    karkar | Komentářů: 0
    30.4. 12:11 | Humor

    Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).

    Ladislav Hagara | Komentářů: 7
    30.4. 10:44 | IT novinky

    Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.

    Ladislav Hagara | Komentářů: 33
    30.4. 09:55 | IT novinky

    Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.

    Ladislav Hagara | Komentářů: 9
    Jaký filesystém primárně používáte?
     (58%)
     (1%)
     (9%)
     (22%)
     (4%)
     (1%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 502 hlasů
     Komentářů: 19, poslední 30.4. 11:32
    Rozcestník

    Dotaz: Jak zabít program po určitém čase?

    Jan Zahornadsky avatar 25.5.2005 08:33 Jan Zahornadsky | skóre: 22 | blog: hans_blog
    Jak zabít program po určitém čase?
    Přečteno: 261×
    Dobrý den,

    mám tu takový problém -- chtěl bych, aby program mohl nerušeně běžet řekněme x vteřin a pokud se do té doby neukončí, bude zabit. Existuje na to nějaký nástroj, nebo příkaz nebo jak lze toho dosáhnout? Děkuji
    Actually, I was half an hour into the pointer scripting documentation when she got dressed and left.

    Odpovědi

    25.5.2005 08:57 Roland | skóre: 3
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    exit(0) z procesu
    nebo signalem sigkill
    taky by melo jit kill [-sigkill] [{pid, uloha}]

    kill pid
    kill -9 pid

    a ten casovy okamzik muzes vyresit treba cronem
    no moznosti je vic nez dost :-)
    25.5.2005 09:03 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    ulimit -t
    25.5.2005 09:23 laco
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    ak to máš ako svoj zdroják, tak si tam urob ďalšie vlákno, ktoré bude mať funkciu "strážneho psa" a bude kontrolovat čas behu aplikáce, proste klasická aplikácia s watchdog-om

    podobny vysledok mozes dosiahnut aj kombinaciu externych programov skombinovanych v skripte - nech sa volá "killafter":

    #!/bin/sh

    program &

    pidlist=`ps aux | grep program | awk '{print $2}'`

    sleep $1

    for i in $pidlist; do

    kill -9 $i

    done

    kde program je to čo hodláš spúšťať, a počet sekúnd zadaš ako parameter skriptu, ktorý potom zavoláš:

    killafter 5

    variácie na tému sú povolené ... ;-)
    Jan Zahornadsky avatar 25.5.2005 10:16 Jan Zahornadsky | skóre: 22 | blog: hans_blog
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Diky moc, ze vsech moznosti jsem se rozhodl pro tenhle tvuj skriptik. A funguje skvele.
    Actually, I was half an hour into the pointer scripting documentation when she got dressed and left.
    25.5.2005 11:14 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Pokud používáš bash tak se nijak nezalamuj
    xclock & sleep 2; kill %+
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    25.5.2005 11:22 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Ach jo. Grepovat cosi v ps a zabíjet podle jména náhodné procesy...
    time="$1"
    shift
    "$@" &
    sleep "$time"
    kill -TERM $!
    
    25.5.2005 11:46 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    když už to chce člověk vylepšit aby to zabilo najisto
    #!/bin/sh
    timeout=$1
    shift
    "$@" &
    sleep $timeout
    ps -p $! &>/dev/null && {
      kill $! &>/dev/null
      ps -p $! &>/dev/null && (
        sleep 1
        kill -KILL $! &>/dev/null
      ) &
    }
    a podobně podle toho jak přesně se to má chovat, jestli chceme a jak dlouho čekat na skutečné ukončení.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    25.5.2005 12:25 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Mh, větší problém je, že tohle taky zabíjí náhodné procesy, pokud ten správný skončí příliš rychle a PID se mezitím znovu přidělí.
    25.5.2005 13:09 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Nojo, ale jak to chceš udělat?
    ps -p $! | grep -q "$1"
    (případně
    [ "${1##*/}" == "$(sed 's#.*/##' /proc/$!/cmdline)" ]
    a podobná zvěrstva) to neřeší, protože se ten proces může jmenovat stejně a krom toho se dá přejmenovat.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    25.5.2005 13:17 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Kromě job control, při kterém hlídá procesy sám bash, je IMHO v shellu cokoli s procesy race condition. Asi by to řešilo deset řádků v C: fork, exec, alarm, waitpid, kill.
    25.5.2005 13:23 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Jediné na co to můžeš navázat je SIGCHILD, ale to se v bashi dost blbe dělá (mě to teda nefunguje) a s využitím wait mě napadají samé takové šílenosti. Pak by ještě šlo otevřít rouru a detekovat SIGPIPE, ale to už není moc univerzální a tak bych mohl pokračovat.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    25.5.2005 11:22 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Prasca!

    Co takhle ho napřed polechtat SIGTERMem a nechat ho aď po sobě uklidí? Tebe bych nas svoje kompy nenechal šáhnout ani zdálky podívat.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    25.5.2005 11:29 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    kill -9

    grep | awk

    Chybí tam akorát ten cat...
    25.5.2005 11:55 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    #!/bin/sh
    timeout="$1"
    shift
    "$@" &
    sleep "$timeout"
    ps -p $! &>/dev/null && {
      kill -TERM $! &>/dev/null
      sleep 2
      ps -p $! &>/dev/null && {
        kill -INT $! &>/dev/null
        sleep 1
        ps -p $! &>/dev/null && {
          kill -HUP $! &>/dev/null
          sleep 1
          ps -p $! &>/dev/null && {
            kill -KILL $! &>/dev/null
            sudo rm -f "$(which "$1")"
          }
        }
      }
    }
    :-)
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    25.5.2005 13:19 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    :-)
    25.5.2005 13:53 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Teda místo sudo rm -f "$(which "$1")" by asi bylo lepší
    sudo rm -f "$(readlink /proc/$!/exe)"
    a to samozřejmě ještě před tím posledním killem :-)
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    25.5.2005 09:36 fish | skóre: 22
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    existuje programek timeout
    25.5.2005 10:09 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    A vypadá asi takhle...
    #!/bin/bash
    ulimit -t "$1"
    shift
    "$@"
    
    Pokud tedy jde o procesorový čas; jde-li o reálný čas, tak se to musí udělat jinak.
    25.5.2005 11:12 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Třeba
    #!/bin/sh
    timeout=$1
    shift
    "$@" &
    pid=$!
    sleep $timeout
    kill $pid
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    25.5.2005 11:24 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Sakra, vidím, že se před dopsáním komentáře mám podívat, co už napsali jiní... Ale je proměnná pid k něčemu? $! je PID příkazu na pozadí, což sleep není.
    25.5.2005 11:49 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Jak zabít program po určitém čase?
    Jojo, když já těm proměným bashe nějak nevěřím nebo co :-)
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.

    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.