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

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch OTA-1 Focal založené na Ubuntu 20.04 Focal Fossa.

    Ladislav Hagara | Komentářů: 0
    dnes 17:11 | IT novinky

    Společnost Red Hat slaví 30 let.

    Ladislav Hagara | Komentářů: 1
    dnes 15:22 | IT novinky

    Ve věku 91 let zemřel izraelský informatik Ja'akov Ziv, spolutvůrce bezztrátových kompresních algoritmů LZ77, LZ78 a LZW (Lempel–Ziv–Welch).

    Ladislav Hagara | Komentářů: 0
    dnes 11:00 | IT novinky

    Byla představena nová Arduino deska Arduino UNO R4 s 32bitovým MCU RA4M1 (Arm Cortex-M4). Desku lze zatím získat pouze v rámci early access programu.

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

    Operační systém MidnightBSD, fork FreeBSD optimalizovaný pro desktop s prostředím Xfce, byl vydán ve verzi 3.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 6
    včera 18:22 | IT novinky

    Na GOG.com běží Spring Sale. Při té příležitosti lze získat zdarma počítačovou hru Neurodeck: Psychological Deckbuilder (ProtonDB).

    Ladislav Hagara | Komentářů: 0
    25.3. 12:33 | Komunita

    Alex Ellis upozornil 15. března, že firma Docker se chystala zrušit bezplatný hosting open-source projektů na Docker Hubu. Po vlně odporu se představitelé firmy omluvili a posléze byl původní záměr odvolán.

    Fluttershy, yay! | Komentářů: 29
    25.3. 07:00 | IT novinky

    Ve věku 94 let zemřel Gordon Moore, mj. spoluzakladatel společnosti Intel a autor Moorova zákona.

    Ladislav Hagara | Komentářů: 1
    24.3. 17:11 | Nová verze

    Mercurial (Wikipedie), software pro SCM (Source Code Management), byl vydán ve verzi 6.4. Přehled novinek v poznámkách k vydání. Ve dnech 5. až 7. dubna proběhne konference Mercurial Paris.

    Ladislav Hagara | Komentářů: 0
    24.3. 11:55 | IT novinky

    Byly rozdány Ceny Velkého bratra (Big Brother Awards) za rok 2022 pro největší slídily pořádané nevládní organizací Iuridicum Remedium. Dlouhodobý slídil: Microsoft. Firemní slídil: Seznam. Úřední slídil: Nejvyšší správní soud. Výrok Velkého bratra: Marian Jurečka. Pozitivní cena: NoLog.

    Ladislav Hagara | Komentářů: 11
    Používáte WSL (Windows Subsystem for Linux)?
     (74%)
     (12%)
     (4%)
     (11%)
    Celkem 340 hlasů
     Komentářů: 4, poslední 24.3. 06:42
    Rozcestník


    Dotaz: běh programu jen po určitou dobu

    Skeletonix avatar 21.3.2007 22:54 Skeletonix | skóre: 18 | Praha
    běh programu jen po určitou dobu
    Přečteno: 134×
    Dobrý den,

    pomocí Cronu spustím v příkazové řádce mplayer (nahrávání). Za 2h bych ho chtěl vypnout .. jen nevím jak zabít daný program po čase. Řeším to tak,že v čas kdy chci ukončit mplayer mám v Cronu:
    killall mplayer
    což není úplně dobré. Koukám na film a ten mi kiksne též :-(

    Neexistuje nějaké lepší řešení ?

    Děkuji

    Odpovědi

    21.3.2007 23:10 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: běh programu jen po určitou dobu
    Pokud jde mplayer pustit pouze na určitou dobu pomocí nějakých parametrů, to nevím. Pokud ne, tak nemusíš zabíjet "všechny" mplayery, ale pouze ten jeden konkrétní proces s tím správným mplayerem.
    Skeletonix avatar 21.3.2007 23:13 Skeletonix | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: běh programu jen po určitou dobu
    to znamená,že bych musel nějak zjistit PID toho konkrétního procesu a ten nějak předat cronu ?

    Jak na to ? S Bashem nejsem zatím moc zběhlí :-(

    Dík
    21.3.2007 23:16 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: běh programu jen po určitou dobu
    Jinak můžeš místo cronu používat příkaz at (slouží k vykonání jednorázové akce, což je asi Tvůj případ; cron slouží spíše k opakované akci).
    Skeletonix avatar 21.3.2007 23:17 Skeletonix | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: běh programu jen po určitou dobu
    potřebuju to opakovat ... jednou týdně. je to záznam jednoho programu.
    21.3.2007 23:11 kocour_easy
    Rozbalit Rozbalit vše Re: běh programu jen po určitou dobu
    Neni to uplne kosher ale aspon neco
    -------------------------------------------------------------------------
    #!/bin/sh
    mplayer .......nejaky_parametry...... &
    pid=$!
    count=0
    KILL_MIN=$((2 * 60))
    while [ -d /proc/$pid ] && [ $count -lt $KILL_MIN ];do
    sleep 60
    count=$(($count + 1))
    done
    if [ -d /proc/$pid ];then
    kill -1 $pid
    else
    echo "Pid '$pid' vymrel po case $count minut...."
    fi
    21.3.2007 23:45 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: běh programu jen po určitou dobu
    Toto má jisté úskalí. Je malá (možná hodně malá, ale je) pravděpodobnost, že ten PID získá jiný proces. Pokud by ten původní mplayer byl sestřelen něčím, nebo někým jiným, mohl by tento PID získat jiný proces, který by jsme si tímto skriptem mohli nechtěně potom sestřelit. Aby se to nestalo, stačilo by sem přidat ještě kontrola na název procesu (jestli se jedná opravdu o proces s nahrávajícím mplayerem).
    21.3.2007 23:39 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: běh programu jen po určitou dobu
    Co kdybys pustil mplayer s parametrem
    -endpos 02:00:00
    
    ?
    21.3.2007 23:43 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: běh programu jen po určitou dobu
    mplayer ... & sleep 7200 ; kill $!
    22.3.2007 00:24 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: běh programu jen po určitou dobu
    Tak toto mi nejde vůbec (mplayer nechce hrát). A je tady další problém, mplayer při spuštění vytváří 2 procesy (a tímto se zabije jen jeden a druhý zůstává viset).
    22.3.2007 12:16 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: běh programu jen po určitou dobu
    Aha, máš pravdu, ten "endpos" nějak nefunguje. Ani jsem to netestoval, protože jsem si myslel, že jsem to tak dřív používal - jenže tehdy to byl asi mencoder.
    Tak mě napadlo ještě jiné řešení - zabít celou skupinu (tedy i sám sebe) pomocí volání killpg().
    #!/usr/bin/env python
    import subprocess, os, time, signal
    cmd = subprocess.Popen(['mplayer', 'film.avi'])
    pgrp = os.getpgrp()
    time.sleep(10)
    os.killpg(pgrp, signal.SIGTERM)
    
    Skeletonix avatar 22.3.2007 19:09 Skeletonix | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: běh programu jen po určitou dobu
    moc děkuji, něco snad pochopím ;) a užiji

    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.